1.日志是什么?
电脑的日志相当于我们平常写的日记,日志里面记录的是服务器的状态。
日志的存在可以使管理员提前知道服务器的各种状态,如果服务器出现什么问题可以提前处理。
那么问题来了,公司的服务器很多,难道管理员一个一个查看服务器的状态吗?实际上并不是这样的,为了提高工作效率,我们可以把所有服务器的日志集中在一起管理,放在一台主机上管理,将其他服务器的日志都传到这台管理日志的主机上,这样就方便多了。
注意:系统启动自动打开的shell会一直产生日志
2.搭建实验环境
步骤一:先在真机里面开启两台虚拟机,并且配置好网络
配置网络在sshd服务这篇文章里面已经详细说过,这里就不演示过程了
一台为Desktop主机,另外一台为server主机
步骤二:将Desktop主机当作日志发送方,将server主机当作日志接收方(管理日志)
Desktop主机的ip地址为172.25.254.111
server主机的ip地址为172.25.254.211
3.系统日志管理基本概念
(1)rsyslog:此服务是用来采集系统日志的,它自己不产生日志,只是起到采集日志的作用
(2)rsyslog的管理:
/var/log/messages | 服务信息日志 |
---|---|
/var/log/secure | 系统登陆日志 |
/var/log/cron | 定时任务日志 |
/var/log/maillog | 邮件日志 |
/var/log/boot.log | 系统启动日志 |
注意:以上这些路径是用来指定日志的采集路径
(3)日志采集规则在/var/log/file(文件名)中设置
注意:心里要清楚什么类型的日志,什么级别的日志
日志类型
auth pam | 产生的日志 |
---|---|
authpriv | ssh,ftp等登陆信息的验证信息 |
cron | 时间任务相关 |
kern | 内核 |
lpr | 打印 |
邮件 | |
mark | (syslog)-rsyslog 服务内部的信息,时间标识 |
news | 新闻组 |
user | 用户程序产生的相关信息 |
uucp | unix to unix copy,unix主机之间相关的通讯 |
local 1~7 | 自定义的日志设备 |
日志级别
debug | 有调试信息的,日志信息最多 |
---|---|
info | 一般信息的日志,最常用的 |
notice | 最具有重要性的普通条件的信息 |
warning | 警告级别 |
err | 错误级别,阻止某个功能或者模块不能正常工作的信息 |
crit | 严重级别,阻止整个系统或者整个软件不能正常工作的信息 |
alert | 需要立刻修改的信息 |
emerg | 内核崩溃等严重信息 |
none | 什么都不记录 |
注意
从上到下,级别从低到高,记录的信息越来越少,详细的可以查看手册:man 3 syslog
4.日志的定向采集
将什么类型、什么级别的日志放在哪个路径下,这就叫日志的定向采集
这样做也有利于日志的管理和查看,因此应该设计采集规则
(1)搭建实验环境:此实验在一台虚拟机上面做
步骤一:在真机里面开启虚拟机Desktop
步骤二:配置虚拟机的网络,这里就不再演示过程,ip为172.25.254.111
(2)操作:
步骤一:打开设定日志采集规则的文件 vim /etc/rsyslog.conf
步骤二:在日志采集文件里面设置将任意类型、任何级别的日志都存放在/var/log/westos下
如果westos文件不存在,会自动生成该文件 命令格式为*.* /var/log/westos