一、系统日志架构:

1、什么是日志?如何查看日志?处理日志消息的服务是哪些?

(1)日志是记录进程和操作系统内核发生过的事件,可方便后面系统审核和故障排除。

(2)日志通常保存在/var/log目录中,系统日志保留在/run/log/journal目录中。

(3)rsyslog服务用以处理syslog消息,systemd-journald服务是操作系统事件日志架构的核心,但是rsyslog服务会从日志中读取systemd-journald收到的syslog消息,并且rsyslog服务会对syslog消息根据优先级进行排序。

2、系统日志文件:

日志文件

存储的信息

/var/log/messages

大多数系统日志消息,包括身份验证、电子邮件处理和调度作业执行相关的消息

/var/log/secure

与安全性和身份验证事件相关的syslog消息

/var/log/maillog

与邮件服务相关的syslog消息

/var/log/cron

与调度作业执行相关的syslog消息

/var/log/boot.log

与系统启动相关的非syslog控制台消息

二、日志优先级以及编辑系统日志优先级:

1、八个标准syslog优先级(代码数字越小优先级越高):

代码

优先级

重要性

0

emerg

系统不可用

1

alert

必须立即采取措施

4

warning

警告

5

notice

正常但重要的事件

7

debug

调试级别消息

2、rsyslog服务配置日志消息的优先级规则:

(1)vim编辑位于/etc/rsyslog.conf文件和/etc/rsyslog.d目录中扩展名为.conf的文件。

(2)编辑时可使用星号(*)通配符匹配。

例如:将优先级为debug的消息保存到/var/log/secure文件中

*.debug   /var/log/secure

三、查看和分析syslog条目、监控日志:

1、journalctl命令:从日志中检索日志消息,列出所有日志条目。优先级为notice和warning的消息显示为粗体文本。优先级为error或以上的消息则显示为红色文本。

(添加-n选项可指定要显示的日志条目数,默认情况显示10个日志条目;添加-f选项可实时显示最后10行日志消息,ctrl+c可退出;添加-p 优先级选项可显示该优先级以上的日志消息)

2、日志消息在文件开头显示之前旧的消息,末尾显示最新的消息。

读取日志文件数据写入mysql 有哪些工具能实现 日志怎么存储查询_linux

(1)记录该日志的时间

(2)发送该日志消息的主机

(3)发送该日志消息的程序或进程名称和PID

(4)发送的消息内容

3、监控日志

tail -f命令:可输出指定文件实时最新的最后10行内容。

四、手动发送日志消息:

logger命令:发送消息到rsyslog服务,默认情况下会将优先级为notice的消息发给设备

(添加-p选项可指定优先级)

例如:向rsyslog服务发送生成设备为user优先级为notice的消息并记录在/var/log/boot.log中。

logger -p user.notice "Log entry created on host"

五、配置持久系统日志:

默认情况下,/etc/systemd/journald.conf文件中的storage参数决定系统日志的存储方式。通常分为persistent(重启后持久保留)、volatile(易失性目录)、auto(如果/var/log/journal目录存在则为持久存储,否则为易失性存储)

配置持久系统目录:

(1)vim /etc/systemd/journald.conf

(2)修改storage参数为persistent

(3)systemctl restart systemd-journald重新启动服务