一、系统日志
进程和操作系统内核需要能够为发生的事件记录日志,这些日志可以用于系统审核和问题故障排除,一般这些日志永久存储/var/log目录种。
/var/log/messages 大多数系统日志信息记录在此
/var/log/secure 安全和身份认证相关的信息和错误的日志文件
/var/log/cronu 与定时任务x相关的日志文件
/var/log/boot.log 与系统启动有关的日志文件
二、rsyslog
rsyslog是一个开源工具,被广泛用于Linux系统以通TCP/UDP协议转发或接收日志消息。
rsyslog服务的主配置文件为/etc/rsyslog.conf。指定日志保存位置修改配置文件,修改后重启rsyslog服务生效。
设置完后,重启服务。
生效后,利用重启sshd服务生成日志
日志还有类型和级别
日志类型
auth ##pam产生的日志
authpritv ##ssh,ftp等登陆信息的验证信息
cron ##时间任务相关
kern ##内核
lpr ##打印
user ##用户程序产生的相关信息
uucp ##unix to unix copy,unix主机之间相关的通讯
以及其他
日志级别
debug ##有调试信息的,日志信息最多
info ##一般信息的日志,最常用
notice ##最具有重要性的普通条件的信息
warning ##警告级别
err ##错误级别,阻止某个功能或者模块不能正常工作的信息
crit ##严重级别,阻止整个系统或者整个软件不能正常工作的信息
alert ##需要立刻修改的信息
emerg ##内核崩溃等严重信息
none ##什么都不记录
三、日志的远程同步
在日志发送方:
vim /etc/rsyslog.conf
@-----表示udp协议
@@–表示tcp协议
设置完后,重启服务
日志接收方:
vim /etc/rsyslog.conf
在15行处设置日志接收模块(udp协议)
在16行处开启接收端口
除外还需要关闭防火墙
systemctl stop firewaiid
执行完后,重启rsyslog服务
以上是为日志同步建立实验环境,接下来进行实验。
将两台虚拟机的日志清空。利用logger指令,在发送方的日志内写如text。
然后,返回接收方查看是否接收到该日志信息
观察发现,在发送方发送日志的同一时间,接收方也获得了相同日志。实验成功。
四、日志的采集格式
打开vim /etc/rsyslog.conf设置格式
timegenerated---------显示日志时间
FROMHOST-IP-------显示主机ip
syslogtag---------------日志记录目标
msg----------------------日志内容
\n-------------------------换行
并在目标日志后加入该格式
此时/var/log/messages日志内的格式便会更改
在日志发送方输入:logger test。查看接收方
该格式只对设置好之后产生的日志生效
才该格式设置成默认格式后,所有日志文件的格式都会更改,而不在局限于某些日志文件。
五、journal
1、利用journal指令查看日志
journal -n +数字------------查看最近(数字)行日志
journal -p err----------------查看错误日志
journal -o verbose---------查看日志的详细参数
journal --since +时间-----查看从某时间起的所有日志
journal --until +时间-------查看到某时间时的所有日志
查看最近5行的日志
查看错误日志
查看详细参数
查看从01:00起的所有日志
查看知道13:30的日志
2、重启后仍保存日志
利用systemd-journal保存日志,避免重启时释放
reboot之后可以观察到日志仍保存着。