第十四讲 日志管理
第十四讲 日志管理
一、简介
1.1 日志管理简介
1.1.1 日志服务
1.1.2 rsyslogd的新特点
1.2.3 确定服务启动
1.2.4 常见日志的作用
日志文件 | 说明 |
/var/log/cron | 记录了系统定时任务相关的日志 |
/var/log/cups/ | 记录了打印信息的日志 |
/var/log/dmesg | 记录了系统再开机时内核的自检信息 |
/var/log/btmp |
记录了错误登录日志。二进制文件,不能vi查看 需要使用lastb命令查看 |
/var/log/lastlog |
记录系统中所有用户最后一次登录时间,二进制文件 不能直接vi查看,需要使用lastlog命令查看 |
/var/log/mailog |
记录邮件信息 |
/var/log/messages |
记录系统重要信息的日志,这个日志文件会记录Linux 绝大多数的重要信息 |
/var/log/secure |
记录验证和授权方面的信息,只要涉及账户和密码的 程序都会记录,比如系统的登录。ssh的登录,su切换 用户,sudo授权,甚至添加和修改用户密码都会记录 |
/var/log/wtmp |
永久记录用户的登录、注销信息。同时,也会记录启动 重启,关机事件。二进制文件,需要last命令查看 |
/var/run/utmp |
记录当前已经登录的用户信息,会随着用户的登录和注销 而变化,只记录当前登录用户的信息,不能直接查看,需要 使用w,who,users等命令查询 |
二、 rsyslogd日志服务
2.1 日志文件格式
2.2 /etc/rsyslog.conf 配置文件
2.2.1 服务名称
服务名称 | 说明 |
auth | 安全和认证相关消息(不推荐使用authpriv替代) |
authpriv | 安全和认证相关消息(私有的) |
cron | 系统定时任务cront和at产生的日志 |
daemon | 和各个守护进程相关的日志 |
ftp | ftp守护进程产生的日志 |
kern | 内核产生的日志(不是用户进程产生的) |
local0-local7 | 为本地使用预留的服务 |
lpr | 打印产生的日志 |
邮件收发信息 | |
news | 与新闻服务器相关的日志 |
syslog | 有syslog服务产生的日志信息 |
user | 用户等级类别的日志信息 |
uucp |
uucp子系统的日志信息,uucp是早期linux系统进行 数据传递的协议,后来也常用在新闻组服务中。 |
2.2.2 连接符号
2.2.3 日志等级
等级名称 | 说明 |
debug | 一般调试信息说明 |
info | 基本的通知信息 |
notice | 普通信息,但是有一定的重要性 |
warning | 警告信息,但是还不影响到服务或系统的运行 |
err | 错误信息,一般打到err等级的信息已经可以影响到运行了 |
crit | 临界状况信息,比err等级还要严重 |
alert | 警告状态信息,比crit还要严重,必须立即采取行动 |
emerg | 疼痛等级信息,系统已经无法使用了 |
2.2.4 日志记录位置
三、日志轮替
3.1 日志文件的命名规则
3.2 logrotate 配置文件
参数 | 参数说明 |
daily | 日志轮替的周期是每天 |
weekly | 日志轮替的周期是每周 |
monthly | 日志轮替的周期是每月 |
rotate 数字 | 保留日志文件的个数,0指没有备份 |
compress | 日志轮替时,旧的日志进行压缩 |
create mode owner group |
建立新日志,同时指定新日志的权限和所有者和所属组 |
mail address |
当日志轮替时,输出内容通过邮件发送到指定的文件地址 |
missingok |
如果日志不存在,则忽略该日志的警告信息 |
notifempty |
如果日志为空文件,则不进行日志轮替 |
minsize 大小 |
日志轮替的最小值。也就是日志一定打达到这个最小值 才轮替,否则就算时间达到也不轮替 |
size 大小 |
日志只有大于指定大小才进行日志轮替,而不是 按照时间轮替。如size 100k |
dateext |
使用日期作为日志轮替文件的后缀。如secure-20220605 |
例子:将apache日志加入轮替
vi /etc/logrotate.conf
/usr/local/apache2/logs/access_log{
daily
create
rotate 30
}
#表示每天建立新日志,日志文件保存30个
只有源码包安装的服务,才需要手动加入轮替
3.3 logrotate 命令
命令格式:logrotate [选项] 配置文件名
选项:
如果此命令没有选项,则会按照配置文件中的条件进行轮替
-v 显示日志轮替过程。
-f 强制进行日志轮替。不管日志轮替的条件是否符合,强制配置文件中的所有日志进行轮替