Linux学习日志10:日志管理
文章目录
前言
本系列文章只是我的学习笔记,内容仅供参考(新手上路,如有错误还望各位大佬指正)。具体内容可以观看b站兄弟连的视频教程。
一、日志管理简介
日志记录了系统和程序运行的记录,在服务器出问题的时候日志的信息很重要。
默认的日志服务是rsyslogd。
查看服务是否运行:ps aux | grep rsyslogd
默认是自启动,所以应该是启动的
常见日志
日志文件在/var/log/目录下
/var/log/cron :记录了系统定时任务相关的日志
/var/log/cups:记录打印信息日志
/var/log/dmesg:记录系统开机时内核自检的信息
/var/log/btmp :记录错误登录的日志。是二进制文件,要用lastb命令查看
/var/log/lastlog:记录系统中所有用户最后一次登录时间的日志,也是二进制文件,要用lastlog命令查看。
/var/log/message:记录系统重要信息的日志,系统出错有限检查这个日志文件。
/var/log/secure:记录验证和授权方面的信息,紫瑶设计账户和密码的程序都会记录。
/var/log/wtmp:永久记录所有用户的登录、注销信息,同时记录系统的启动,重启,关机等事件,二进制文件,要用last命令查看。
/var/log/utmp:记录当前以及登录的用户信息。这个文件会不断变化,二进制文件,可以用w,who,users查询。
RPM包安装的服务的日志也在/var/log/目录下,源码包的日志在自己的安装目录下。
二、rsyslogd日志服务
标题基本日志格式
1、时间发生的时间
2、发生事件的服务器的主机名
3、产生事件的服务名或程序名
4、事件的具体信息
rsyslogd配置文件
/etc/rsyslog.conf
服务名称:
auth:安全和认证相关消息
authpriv:安全和认证相关消息
cron:系统定时任务cront和at产生的日志
daemon:和各个守护进程相关的日志
ftp:ftp守护进程产生的日志
kern:内核产生的日志
local10-local17:为本地服务使用预留的服务
lpr:打印产生的日志
mail:邮件收发信息
news:与新闻服务器相关的日志
syslog:有sysloged服务产生的日志信息
user:用户等级类别的日志信息
uucp:子系统的日志信息
日志等级:
debug:一般调试信息说明
info:基本通知消息
notice:普通信息
warning:警告信息
err:错误信息
crit:临界状况信息,比err严重
alert:警告状态信息,比crit严重
emerg:疼痛等级,系统已经无法使用
连接符号:
*:代表所有日志等级
.:代表只要比后面等级高的或相等的记录下来
.=:代表只记录所需等级,其他等级都不记录
.!:代表不等于,除了该等级外,其他等级都记录
日志记录位置
1、日志文件的绝对路径如“/vae/log/message”
2、系统设备文件如“/dev/lp0”
3、转发给远程主机如“@192.168.0.210:514”
4.用户名,如“root”
5、忽略或丢弃,“~”
日志轮替
日志文件命名规则
如果配置文件中用于"dateext"参数,那么日志会用日期来作为日志文件的后缀,这样日志文件名不会重叠。如果没有"dateext"参数,会自动加.序号,序号越小越新
/etc/logrotate.conf配置文件
参数:
daily:日志的轮替周期是每天
weekly:日志的轮替周期是每周
monthly:日志的轮替周期是每月
rotate 数字:保留的日志文件的个数。0指没有备份
compress:日志轮替时,旧的日志进行压缩
create mode owner group :建立新日志,同时指定新日志的权限与所有者和所属组。
mail address:当日志轮替时,输出内容通过邮件发送到指定邮件地址
missingok:如果日志不存在,则忽略该日志警告信息
notifempty:如果日志为空文件,则不尽兴日志轮替
minsize 大小:日志轮替的最小值。也就是日志达到最小值才会轮替,否则就算时间到也不轮替
size 大小:日志只有大于指定大小才进行日志轮替,而不是按照时间轮替,如 size 100k
dateext:使用日期作为日志轮替文件的后缀
把源码包安装的软件日志加入轮替
在配置文件中加入源码包日志文件的绝对路径再加{ 参数 }就可以了
与wtmp和btmp类似
logrotate命令
语法:logrotate 选项 配置文件名(如:/etc/logrotate.conf)
选项:
-v:显示日志轮替过程
-f:强制进行日志轮替,不管日志轮替条件是否已经符合