系统日志管理
1 .rsyslog
此服务是用来采集系统日志的,他不产生日志,只是起到采集作用
2.rsyslog的管理
/var/log/messgaes ##服务信息日志
/var/log/secure ##系统登陆日志
/var/log/cron ##定时任务日志
/var/log/maillog ##邮件日志
/var/log/boot.log ##系统启动日志
服务信息日志
定时任务日志
系统启动日志
指定日志采集的路径(在/etc/rsyslog.conf文件中设置)
什么类型的日志.什么级别的日志 /var/log/file ##自主设计日志采集规则
查看设置的指定路径的日志
(1)日志类型的分类
auth ##pam产生的日志
authpriv ##ssh,ftp等登陆信息的验证信息
cron ##时间任务相关
kern ##内核
lpr ##打印
mail ##邮件
mark(syslog)-rsyslog ##服务内部的信息,时间标识
news ##新闻组
user ##用户程序产生的相关信息
uucp ##unix to unix copy,unix主机之间相关的通讯
local 1~7 ##自定义的日志设备
(2)日志级别分为:
debug ##有调试信息的(日志信息最多)
info ##一般信息的日志,(最常用)
notice ##最具有重要性的普通条件的信息
warning ##警告级别
err ##错误级别,阻止某个功能或者模块不能正常工作的信息
crit ##严重级别,阻止整个系统或者整个软件不能正常工作的信息
alert ##需要立即更改的信息
emerg ##内核崩溃等严重信息
none ##什么都不记录
注意:从上到下,级别从低到高,记录的信息就越来越少
查看手册查询详细信息:
man 3 syslog
3.日志的远程同步
在日志发送方
vim /etc/rsyslog.conf
更改为*.* @172.25.254.26 ##规定@@标示tcp协议发送,@表示udp协议发送
systemctl restart rsyslog ##重新开启日志服务并加载修改的配置信息
在日志接受方
vim /etc/rsyslog.conf
15行改为 $ModLoad imudp ##日志接受模块
16行改为 $UDPServerRun 514 ##开启接受端口
systemctl restart rsyslog ##重启日志服务
systemctl stop firewalld ##关闭防火墙
systemctl disable firewalld ##设定防火墙开机关闭
测试:
发送方先清除再测试查看
> /var/log/messages
logger heihei ##日志测试命令
cat /var/log/messages ##查看日志已经生成
在接受方先清除再查看
> /var/log/messages
cat /var/log/messages
4.日志采集格式的设定
vim /etc/rsyslog.conf
$template NICO,"%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
注意:NICO 是规则名称,可随意设置,但必须是大写
操作时候需要把规则名称加到需要设定名称的文件后,并且加分号
举例:
$template NICO,"%syslogtag%|%msg%|%FROMHOST-IP%\n"
*.* /var/log/zyc;NICO 此时规则名称为NICO,它作为
zyc日志文件的规则
cat /var/log/westos
查看指定路径日志是否采用设定的规则
规则
%timegenerated% ##显示日志时间
%FROMHOST-IP% ##显示主机ip
%syslogtag% ##日志记录目标
%msg% ##日志内容
\n ##换行
5.时间同步服务
服务名称:chronyd
服务端设置:
vim /etc/chrony.conf
22行 allow 172.25.254.226/24 ##允许那些客户端来同步本机时间
29行 local stratum 10 ##本机不同步任何主机的时间,本机作为时间源
systemctl restart chronyd ##重启时间同步服务
客户端设置
vim /etc/chrony.conf
删除其他的sever行并设置一行server为:
server 172.25.254.226 ibust ##本机立即同步226主机的时间,
ibust为立即执行的意思
systemctl restart chronyd ##重启时间同步服务
服务端设置客户端可连接,并设置自己为时间源
服务端设置同步客户端(ip)所对应的时间
查看服务端时间
查看客户端同步服务端的时间
测试查看
[root@cilent_sshd ~]# chronyc sources -v
210 Number of sources = 1
最后一栏为时间的来源
6.timedatectl 命令
timedatectl ##管理系统时间
timedatectl + status ##显示当前时间信息
+ set-time ##设定当前时间
+ set-timezone ##设定当前时区
+ set-local-rtc 0|1 ##设定是否使用utc时间(0表示使用,1表示不使用)
+ list-timezones ##查看支持的所有时区
查看时间信息
修改时间
修改时区
查看时区
7.journal
(1) journalctl 日志查看工具
-n 4 ##查看最近的四条日志
-p err ##查看错误日志
-o verbose ##查看日志的详细参数
--since time##查看从什么时间开始的日志
--unit tim ##查看到什么时间截止的日志
查看最近四条日志
查看错误日志
查看日志参数
查看从00:30到00:31:46的全部日志
(2)如何使用systemd-journald保存系统日志
默认systemd-journald是不保存系统日志到硬盘的,那么关机之后再开机只能看到本次开机之后的日志,上一次关机之前的日志便是无法查看的
mkdir /var/log/journal
chgrp systemd-journal /var/log/journal
chmod g+s /var/log/journal
kill -1 systemd-journald
重启之后关机前的日志还存在