日志管理
日志常常放在/var/log
目录中
常用的日志:
比如lasllog
文件:可以通过命令lastlog
来查看
Centos7.6 日志服务是rsyslogd
ps aux | grep "rsyslog" | grep -v "grep"
:查询服务是否存在,-v
的含义是反向匹配,匹配没有grep的
systemctl list-unit-files | grep rsyslog
:查询服务的自启动状态
rsyslogd服务都在配置文件/etc/rsyslog.conf
文件中进行存放
编辑文件的格式为*.*
:
其中第一个表示日志类型,第二个表示日志级别
日志类型:
日志级别:
从上到下,级别从低到高,记录信息越来越少
由日志服务rsyslogd 记录的日志文件,日志文件的格式包括:
- 事件产生的时间
- 产生事件的服务器的主机名
- 产生事件的服务名或程序名
- 事件的具体信息
日志管理实例:
自定义添加一个日志文件,将sshd服务的相关信息写入
vim /etc/rsyslog.conf
,中添加自定义的日志*.*
*.* /var/log/hsp.log
- 进行重启查看文件中关于sshd的日志信息
- 日志轮替
日志轮替就是把旧的日志文件移动并改名,同时建立新的日志文件,当旧的文件超出保存范围后会进行删除
logrotate
:日志轮替管理,服务在文件/etc/logrotate.conf
进行配置
dateext
:配置文件中的参数,如果配置文件中出现参数,那么日志会用日期来作为日志文件的后缀
如果配置文件中没有dateext
参数,日志文件就需要进行改名,当第一次进入日志轮替的时候,当前的secure
日志会自动改为secure.1
,然后新建新的secure
文件继续保存新的日志
在日志中:
也可以单独给某给配置文件创建单独的策略:(格式如下)
说明 :也可以将单独的日志文件的策略写到文件/etc/logroate.d
目录当中
在logrotate.conf
文件中通过include /etc/logroate.d
进行引用
- 策略中的参数说明
- 日志轮替机制原理
日志轮替之所以可以在指定的事件备份文件,是依赖定时任务,/etc/cron.daily
文件中有一个logrotate文件,定时任务每天都会进行定时执行达到轮替的效果
- 内存日志
journalctl
:可以查看内存日志
journalctl -n 3
查看最新的3条
journalctl --since 19:00 --until 20:00
:查看规定时间内的日志信息
journalctl -p err
:查看报错日志
journalctl -o verbose
:查看日志详细内容
journalctl_PID= _COMM=sshd
:查看包含这些参数的日志
注意:内存日志在重启的时候会清空