日志
常见系统日志
/var/log/message 记录Linux操作系统常见的系统和服务错误信息
/var/log/boot.log 记录了系统在引导过程中发生的事件,就是Linux系统开机自检过程显示的信息
/var/log/lastlog 记录了最后一次用户成功登录的时间、登录IP等信息(一般通过命令lastlog查看)
/var/log/secure Linux系统安全日志,记录用户和工作组变坏情况、用户登录认证情况
/var/log/btmp 记录Linux登录失败的用户、时间以及远程IP地址(lastbm)
/var/log/wtmp 该日志文件永久记录每个用户登录、注销以及系统的启动、停机的事件,使用last命令查看
日志类型
auth pam产生的文件
authpriv ssh,ftp等登录信息的验证信息
cron 时间任务相关
kern 内核
lpr 打印
mail 邮件
mark(syslog)-rsyslog 服务内部的信息,时间标记
news 新闻组
user 用户程序产生的相关信息
日志服务管理
默认开机启动
1.收不到日志(重要)
解决:重启日志服务
# systemctl restart rsyslog
2.修改了日志的配置文件
1)修改日志存储位置
2)远程日志管理服务器(ELK代替)
日志设备
日志对象 对哪个服务做日志
# man 5 rsyslog.conf
auth, authpriv, cron, daemon, kern, lpr,mail, mark, news, security (same as auth), syslog, user, uucp and local0 through local7
日志优先级
日志级别分为:7种日志级别代号0-7,日志级别越低信息约详细 级别越高日志信息越简略
0 debug 有调试信息的,日志信息最多
1 info 一般信息的日志,最常用
2 notice 最具有重要性的普通条件的信息
3 warning 警告级别
4 err,error 错误级别,阻止某个功能或者模块不能正常工作的信息
5 crit 严重级别,阻止整个系统或者整个软件不能工作的信息
6 alert 需要立刻修改的信息
7 emerg,panic 内核崩溃等严重信息
none 什么都不记录
自定义日志
vim /etc/rsyslog.conf
日志对象.日志级别 日志文件
. 大于或者等于后面指定的日志级别
.= 等于后面指定的日志级别
.! 非
日志对象.日志级别 日志文件
. 大于或者等于后面指定的日志级别
.= 等于后面指定的日志级别
.! 非
例:
*.* /var/log/mylog
kern.err /var/log/kernel.log
*.info;mail.none /var/log/big.log
mail.info /var/log/mail.log
cron.info;cron.!err /var/log/newcron
cron.info /var/log/newcron
重启日志服务
systemctl restarts rsyslog
日志轮转
也叫日志切割 防止日志文件过大
1.配置日志切割
轮转频率(周期) 多长时间切割一次
轮转次数 "一共"切割多少次
2.测试
# logrotate
切割原理:
周期 weekly
次数 3
0 log
1 log log.1
2 log log.1 log.2
3 log log.1 log.2 log.3
4 log log.1 log.2 log.3a
vim /etc/logrotate.conf
//全局配置
weekly 轮转周期 默认一周轮转一次
rotate 4 轮转次数 默认轮转4次
create 创建新文件
dateext 以轮转时刻的时间作为轮转文件的结尾
//局部配置
include /etc/logrotate.d
missingok 在文件不存在的时候也不报错
create 0644 root utmp
为多个日志文件配置日志轮转
vim /etc/logrotate.conf
/var/log/cron
/var/log/maillog
/var/log/secure
/var/log/spooler
{
weekly
rotate 4
}
强制轮转
logrotate -f /etc/logrotate.conf