实验环境 关闭防火墙systemctl stop firewalld
默认存放日志路径:/run/log
用journalctl 指令可以直接查看日志 (root身份)
journalctl -n 查看最新几行
journalctl --since "14:20:10" --until "14:30:00" 显示时间段内的日志
journalctl -o short 经典模式显示日志
journalctl -F PRIORITY查看可控日志级别
journalctl --disk-usage查看日志大小
## 设置日志的回滚
journalctl --vacuum-size=1G 达到1G自动删除
journalctl --vacuum-time=1w 日期达到一周自动清理
系统中默认日志在:/run/log中
默认方式在系统重启后日志会被清理,要永久保存日志请完成以下操作:
mkdir /var/log/journal 在这个存放路径中建立一个文件
chgrp systemd-journal /var/log/journal 改变日志的用户组为/var/log/journal
chmod 2775 /var/log/journal 给这个文件权限(2 775;2代表这个文件中的所有东西都将自动归属于这个组,775代表权限 即rwxrwxr-x)
systemctl restart systemd-journald.service 重启日志服务读取更改信息
当服务启动后日志的存放路径会被制定到:/var/log/journal
## 同步日志到其他主机(打开两个主机,一个是发送端,一个是接收端)
发送端假设:westosb
编辑文件 vim /etc/rsyslog.conf
添加*.* @172.25.254.140(此处为接受端ip) 如图:
重新启动 systemctl restart rsyslog.service
> /var/log/messages 清空日志
接受端:westosa
编辑文件vim /etc/rsyslog.conf
去掉文中这两行的注释符#
module(load="imudp") # needs to be done just once
input(type="imudp" port="514")
如图24、25行:
重新启动 systemctl restart rsyslog.service
tail -f /var/log/messages 对接受端进行监控
在发送端进行一些进程,然后看实时监控
路径:/etc/rsyslog.conf
设置日志的显示格式:按照文件类型一一设置;一次性设置全部;批量设置
vim /etc/rsyslog.conf编辑文件
更改日志显示格式:任意找空白行输入
$template WESTOS,"%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
设置格式 :后面你所设定的日志格式WESTOS
然后在cron.*|*.emerg|local7.* 等日志类型之后的存储路径后+ ;WESTOS
更改日志显示格式:任意找空白行输入
$template WESTOS,"%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
设置格式 :后面你所设定的日志格式WESTOS
*.* 代表所有文件 自定义将所有文件存储在/var/log/file中
所有的日志格式都变为你设置的WESTOS格式
更改日志显示格式:任意找空白行输入
$template WESTOS,"%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
设置格式 :你所设定的日志格式WESTOS
vim /etc/rsyslog.conf 将33行复制到34行中,删去注释符
编辑之后如图,格式变为之前设置的WESTOS
(批量处理格式和全部处理的区别在于-————全部处理的时候所有类型的日志都会保存在一个文件,不方便查看;分批处理是不更改日志存储地址,各在各文件,但是格式已经更改)