中标麒麟V7服务器系统日志不写入问题解决思路

一、问题描述

某单位多台中标麒麟V7服务器message日志不再写入,系统中能查到的归档日志都是1-2个月之前的。

二、问题分析定位

   1. 首先考虑是不是日志服务没有起来,查看服务状态,systemctl status rsyslog 发现服务是正常的

   2. 查了下可能是日志配置文件的问题,/etc/rsyslog.conf 参考标准的日志文件配置,重新配置了一遍,重启日志服务systemctl restart rsyslog,发现日志还是没法写入。

另外是多台服务器都出现日志无法写入的情况,日志配置文件不可能都有问题,况且默认的配置文件,日志是可以写入的,所以配置文件的问题应该可以排除。

   3. 进一步分析可能是跟日志服务相关的其他服务出现问题导致日志没法写入到message。       

    a.我们看下rsyslog这个服务的功能:日志处理服务——rsyslog,它可以将程序产生的日志信息进行过滤、处理并存储到指的文件服务器中通过编辑其配置文件 /etc/rsyslog.conf 进行一些全局或者日志记录规则的定义。(以前老版本的linux日志收集服务是syslog,不过新一点版本的日志收集服务都是rsyslog)

    b.所以rsyslog只是收集,过滤,处理相关的日志信息,然后再存到/etc/rsyslog.conf配置文件中指定的日志文件里。

    c.日志服务其实还有个操作系统自带的日志服务systemd-journald                             

    systemd-journald 用于检索 systemd 的日志,是 systemd 自带的日志系统。systemd-journald 是 rsyslog的补充,收集来自内核、启动过程早期阶段、标准输出、系统日志、守护进程启动和运行期间错误的信息。syslog的信息也可以由systemd-journald 转发到 rsyslog中进一步处理。                  

       默认情况下,systemd 的日志保存在/run/log/journal中,系统重启就会清除通过新建/var/log/journal目录,日志会自动记录到这个目录中。rsyslog 服务随后根据优先级排列日志信息,将它们写入到/var/log目录中永久保存。

三、问题解决

    发现系统自带的日志服务systemd-journald并没有起来 systemctl status systemd-journald查看。于是启动systemctl start systemd-journald,服务启动后,查看状态,然后发现/var/log/message在不停的更新日志,查看了日志文件发现各种日志都有记录,至此问题解决。

四、总结

       老版本的日志收集服务都是syslog服务,新版本的日志收集服务是rsyslog,但是系统自带的日志服务systemd-journald也一定要开启,因为很多系统的日志信息都是通过systemd-journald 转发到 rsyslog中进一步处理将信息永久存在/var/log/messages下。

所以检查确认rsyslog和systemd-journald这两个服务是否都是正常的运行状态。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值