Linux系统日志管理

一、系统日志

定义:
         系统日志是记录系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件。用户可以通过它来检查错误发生的原因,对于系统的安全性具有极为重要的作用,日志文件所处的位置都在/var/log目录下。

1.系统默认日志的分类
位置说明
/var/log/messages服务信息日志
/var/log/secure系统登陆日志
/var/log/cron定时任务日志
/var/log/maillog邮件日志
/var/log/boot.log系统启动日志

二、日志管理服务

rsyslog            ##此服务是用来采集系统日志的,它不产生日志,只是起到采集作用

1.日志采集格式

* . * = 日志类型.日志级别

日志类型  说明
authpam产生的日志
authprivssh,ftp等登陆信息的验证信息
cron时间任务相关
kern内核产生的日志
lpr打印产生的日志
mail邮件收发信息
mark(syslog)-rsyslog服务内部的信息,时间标识
news新闻组
user用户程序产生的相关信息
uucpunix to unix copy,unix主机之间相关的通讯
              日志级别                 说明
debug有调式信息的,日志信息最多
info一般信息的日志,最常用
notice最具有重要性的普通条件的信息
warning警告级别
err错误级别,阻止某个功能或者模块不能正常工作的信息
crit严重级别,阻止整个系统或者整个软件不能正常工作的信息
alert需要立刻修改的信息
emerg内核崩溃等严重信息
none什么都不记录

注意:从上到下,级别从低到高,记录的信息越来越少

        连接符号         说明
" . "比该等级高包含该等级的日志都记录下来
" .= "记录所需等级的日志,其它不记录
" .! "除该等级的日志外,其他的都记录
" * "所有日志类型,所有等级都记录

修改完成后要重启服务systemctl restart rsyslog.service

三、日志的远程同步

操作实例:
客户端client 172.25.254.173                服务端server 172.25.254.93

将服务端server产生的日志存储到客户端client
在日志的发送方server:
systemctl stop firewalld           ##关闭火墙
vim /etc/rsyslog.conf ##修改文件内容

62  *.*                  @172.25.254.173 

systemctl restart rsyslog         ##重启服务

注意:"@“表示udp协议发送,”@@"表示tcp协议发送

在日志的接收方client:
systemctl stop firewalld           ##关闭火墙
vim /etc/rsyslog.conf ##修改文件内容

15 $ModLoad imudp           ##日志接收模块
16 $UDPServerRun 514        ##开启接收端口

systemctl restart rsyslog         ##重启服务

测试:
在发送方和接收方都清空日志文件

> /var/log/messages

在日志的发送方

logger hahahahahahaha
cat /var/log/messages     ##查看日志已经生成

在这里插入图片描述

在日志的接收方查看

cat /var/log/messages

在这里插入图片描述

四、日志采集格式的设定

vim /etc/rsyslog.conf

$template WESTOS, "%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"

%timegenerated%      ##显示日志时间
%FROMHOST-IP%     ##显示主机ip
%syslogtag%             ##日志记录目标
%msg%                     ##日志内容
\n                              ##换行

五、日志分析

journalctl                   ##日志查看工具

journalctl -n 3           ##查看最近3条日志
在这里插入图片描述
journalctl -p err        ##查看错误日志
在这里插入图片描述
journalctl -o verbose ##查看日志的详细参数
在这里插入图片描述
例子:
journalctl _HOSTNAME=localhost     ##查看主机名为localhost所产生的日志

journalctl --since "10:00"  ##查看从10:00开始的日志
journalctl --until "11:00"  ##查看到11:00为止的日志
journalctl --since "10:00" --until "11:00"   ##查看从10:00开始到11:00为止的日志

注意:如果系统reboot则用journalctl查看的日志信息将不存在(因为日志被放在内存中,借助journal才能查看)

关于使用systemd-journald保存系统日志
默认systemd-journald是不保存系统日志到硬盘的;那么关机后再次开机只能看到本此开机之后的日志,上一次关机之前的日志是无法查看的!

操作:
mkdir /var/log/journal
注意:文件名叫journal,自定义名称也可以,但得改配置文件(比较麻烦)。

chgrp systemd-journal /var/log/journal  ##改变journal目录的组名
chmod g+s /var/log/journal    ##给gournal目录的所有组一个权限
killall -1 systemd-journald   ##重新加载配置
ls /var/log/journal
946cb0e817ea4adb916183df8c4fc817    ##机器码

查看
在这里插入图片描述
reboot后可以看见之前的日志
在这里插入图片描述

注意 :不建议使用 ,操作后会一直把日志储存到journal目录下,会崩溃
谨记 :实验操作后将journal目录删除掉,重新加载。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值