Linux系统中的日志管理

实验环境

westos_localhost:172.25.254.207
westos_localhost: 172.25.254.107
两个主机都执行关闭防火墙操作:systemctl stop firewalld

一、journald

服务名称:systemd-journald.service
默认日志存放路径: /run/log
journalctl:

命令 功能
journalctl -n 3 日志的最新3条
journalctl --since “2020-05-01 11:00:00” 显示11:00后的日志
journalctl --until “2020-05-01 11:05:00” 显示日志到11:05

Linux系统中的日志管理
Linux系统中的日志管理

journalctl -o 设定日志的显示方式
符号 含义
short 经典模式显示日志
verbose 显示日志的全部字节
export 适合传出和备份的二进制格式
json js格式显示输出

Linux系统中的日志管理
Linux系统中的日志管理
Linux系统中的日志管理
Linux系统中的日志管理

journalctl -p 显示制定级别的日志
符号 功能
#0 emerg 系统的严重问题日志
#1 alert 系统中立即要更改的信息
#2 crit 严重级别会导致系统软件不能正常工作
#3 err 程序报错
#4 warning 程序警告
#5 notice 重要信息的普通日志
#6 info 普通信息
#7 debug 程序拍错信息

Linux系统中的日志管理

Linux系统中的日志管理
Linux系统中的日志管理
Linux系统中的日志管理
Linux系统中的日志管理
Linux系统中的日志管理

journalctl -F PRIORITY 查看可控日志级别

Linux系统中的日志管理

journalctl -u sshd 指定查看服务

Linux系统中的日志管理

命令 功能
journalctl --disk-usage 查看日志大小
journalctl --vacuum-size=1G 设定日志存放大小
journalctl --vacuum-time=1W 日志在系统中最长存放时间

Linux系统中的日志管理
Linux系统中的日志管理

journalctl -f 监控日志

Linux系统中的日志管理

二、用journald服务永久存放日志

系统中默认日志在:/run/log/journal中
默认方式在系统重启后日志会被清理
要永久保存日志请完成以下操作:
Linux系统中的日志管理
Linux系统中的日志管理

当服务重启日志存放路径会被制定到:/var/log/journal
测试:
1.在操作以上步骤之前查看日志
2.重启系统
3.再次查看日志
4.可以看到日志是不会被保存下来的只能看到重启之后的日志
5.完成以上操作后再次重启系统可以看到日志是被保存下来的
Linux系统中的日志管理

三、rsyslog

服务名称:rsyslog.service
日志存放:

路径 信息
/var/log/messages 系统服务日志,常规信息,服务报错
/var/log/secure 系统认证信息日志
/var/log/maillog 系统邮件日志信息
/var/log/cron 系统定时任务信息
/var/log/boot.log 系统启动日志信息

配置文件:/etc/rsyslog.conf
Linux系统中的日志管理

1、自定义日志采集路径

日志类型.日志级别 日志存放路径
Linux系统中的日志管理
Linux系统中的日志管理

日志级别 功能
auth 用户认证
authpriv 服务认证
cron 时间任务
kern 内核类型
mail 邮件
news 系统更新信息
user 用户
日志级别 功能
debug 程序排错信息
info 程序常规运行信息
notice 重要信息的普通日志
waring 程序警告
err 程序报错
crit 严重级别会导致系统软件不能正常工作
alert 系统中立即要更改的信息
emerg 系统的严重问题日志
none 不采集

2、如何更改日志采集格式

定义日志采集格式
Linux系统中的日志管理
Linux系统中的日志管理
Linux系统中的日志管理
Linux系统中的日志管理

项目 功能
%FROMHOST-IP%: 日志来源主机IP
%timegenerated%: 日志生成时间
%syslogtag%: 日志生成服务
%msg%: 日志内容
\n: 换行

设定日志采集格式应用:
更改默认设置为WESTOS
Linux系统中的日志管理
将服务认证以外的日志存入/var/log/westos目录下 并设置采集格式为WESTOS

*.*authpriv.none /var/log/westos;WESTOS

四、日志的远程同步

1.在westos_node1中设定接受所有人的日志
systemctl stop firewalld #关闭火墙
vim /etc/rsyslog.conf
19 module(load=“imudp”) ##打开日志接受插件
20 input(type=“imudp” port=“514”) ##指定插件使用接口

systemctl restart rsyslog
查询端口:
Linux系统中的日志管理
2.westos_student中设定发送日志到westos_localhost中
Linux系统中的日志管理
测试
Linux系统中的日志管理

五、timedatectl

命令 功能
timedatectl set-time “2020-02-13 10:41:55” 设定系统时间
timedatectl list-timezones 显示系统的所有时区
timedatectl set-timezone “Asia/Shanghai” 设定系统时区
timedatectl set-local-rtc 0/1 设定系统时间计算方式

Linux系统中的日志管理
Linux系统中的日志管理
Linux系统中的日志管理
Linux系统中的日志管理

六、时间同步服务

服务名称: chronyd.service
配置文件: /etc/chrony.conf
在虚拟机一中:
vim /etc/chrony.conf
allow 172.25.254.0/24 ##允许172.25.254.0网段主机同步时间
local stratum 10 ##开启时间同步服务器功能并设定级别为10
Linux系统中的日志管理
systemctl restart chronyd.service#重启服务
systemctl stop firewalld #关闭火墙
在虚拟机二中:
vim /etc/chrony.conf
pool 172.25.254.11 iburst
Linux系统中的日志管理
systemctl restart chronyd#重启服务
查看:Linux系统中的日志管理
使用chronyc 命令查看时间效果:
Linux系统中的日志管理