系统日志管理

一.查看系统中的日志rsyslog
1.rsyslog //此服务是用来采集系统日志的,它不产生日志,只是起到采集作用
2.rsyslog的管理
(1)

/var/log/messages //服务信息日志
/var/log/secuer //系统登陆日志
/var/log/cron //定时任务日志
/var/log/maillog //邮件日志
/var/log/boot.log //系统启动日志

(2)指定日志采集路径
日志采集规则:
什么类型的日志.什么级别的日志 /var/log/file ##日志采集规则
(3)日志的类型分为:

auth //pam产生的日志
authpriv //ssh.ftp等登陆信息的验证信息
cron //时间任务相关
kern //内核
lpr //打印
mail //邮件
mark(syslog)-rsyslog //服务内部的信息,时间标识
news //新闻组
user //用户程序所产生的相关信息
uucp //unix to unix copy,unix主机之间相关的通讯
local 1~7 //自定义的日志设备

(4)日志的级别分为:

debug //有调试信息的,日志信息最多
info //一般信息的日志,最常用
notice //最具有重要性的普通条件的信息
warning //警告级别
err //错误级别,阻止某个功能或者模块不能正常工作的信息
crit //严重级别,阻止整个系统或者整个软件不能正常的信息
alert //需要立刻修改的信息
emerge //内核奔溃等严重信息
none //什么都不记录
<<注意>>:从上到下,级别从低到高,记录的信息越来越少
详细的可以查到手册:man 3 syslog

3.日志的远程同步
(1)在日志的发送方:

vim /etc/rsyslog.conf . @172.25.254.202 //"@"表示udp协议发送,“@@”表示tcp协议发送
系统日志管理

systemctl restart rsyslog
系统日志管理

(2)在日志的接受方:

vim /etc/rsyslog.conf
15 $ModLoad imudp //日志接受模块
16 $UDPServerRun 514 //开启接受端口

系统日志管理
systemctl restart rsyslog
系统日志管理

systemctl stop firewalld //关闭火墙
systemctl disable firewalld //设定火墙开机关闭
系统日志管理
测试:
在发送方和接受方都清空日志文件

/var/log/messages
在日志的发送方
logger test
cat /var/log/messages

系统日志管理
在日志的接受方查看
cat /var/log/messages
系统日志管理
4.日志采集格式的设定
vim /etc/rsyslog.conf

$template WESTOS, “%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n” //设置WESTOS的日志采集格式
%timegenerated% //显示日志时间
%FROMHOST-IP% //显示主机IP
%syslogtag% //日志记录目标
%msg% //日志内容
\n //换行
系统日志管理

注意:* . * /var/log/messages;WESTOS //在这个日志下使用WESTOS的日志采集格式
cat /var/log/messages //查看该文件下的日志是否为WESTOS的显示格式
系统日志管理

5.时间同步服务
服务名称
chronyd
##在服务端##

vim /etc/chrony.conf
22行 allow 172.25.254.0/24 //允许哪些来同步本机时间
29行 local stratum 10 //本机不同不任何主机的时间,本机作为时间源

系统日志管理

systemctl restart chronyd.service //重气该服务以便录入已经改变的文件信息
系统日志管理
##在客户端##

vim /etc/chrony.conf
server 172.25.254.202 iburst //本机立即同步202主机的时间
系统日志管理

systemctl restart chronyd.service
系统日志管理
##测试##
#在客户端
chronyc sources -v
系统日志管理
系统日志管理

6.timedatectl命令
timedatectl //管理系统时间

timedatectl status //显示当前时间信息

系统日志管理

timedatectl set-time //设定当前时间

系统日志管理

timedatectl set-timezone //设定当前时区

系统日志管理

timedatectl set-local-rtc 0|1 //设定是否使用utc时间
vim /etc/adjtime

系统日志管理
系统日志管理

timedatectl list-timezones //查看支持的所有时区

系统日志管理
7.journal
(1).journalctl //日志查看工具
journalctl -n 3 //查看最近三条日志
journalctl -p err //查看错误日志
journalctl -o verbose //查看日志的详细参数
系统日志管理
journalctl --since //查看从什么时候开始的日志
系统日志管理
journalctl --until //查看到什么时间为止的日志
系统日志管理
journalctl --since “15:31” --until “15:35”
系统日志管理
2.如何使用system-journald保存系统日志
默认systemd-journald是不保存系统日志到硬盘的,那么关机以后再次开机只能看到本次开机之后的日志,上一次关机之前的日志是无法查到的

mkdir /var/log/journal
chgrp systemd-journal /var/log/journal
chmod g+s /var/log/journal
killall -1 systemd-journald //重启配置
ls /var/log/journal
946cb0e817eadb916183df8c4fc817

系统日志管理
在reboot虚拟机的时候然后会看到上一次的日志是存在的
系统日志管理