Linux日志管理基本介绍及日志轮替原理

😀前言
本篇博文是关于日志管理,希望你能够喜欢

🏠个人主页:晨犀主页
🧑个人简介:大家好,我是晨犀,希望我的文章可以帮助到大家,您的满意是我的动力😉😉

💕欢迎大家:这里是CSDN,我总结知识的地方,欢迎来到我的博客,感谢大家的观看🥰
如果文章有什么需要改进的地方还请大佬不吝赐教 先在此感谢啦😊

Linux日志管理

基本介绍

1)日志文件是重要的系统信息文件,其中记录了许多重要的系统事件,包括用户的登录信息、系统的启动信息、系统的安全信息、邮件相关信息、各种服务相关信息等。

2)日志对于安全来说也很重要,它记录了系统每天发生的各种事情,通过日志来检查错误发生的原因,或者受到攻击时攻击者留下的痕迹。

3)可以这样理解 日志是用来记录重大事件的工具.

系统常用的日志

系统的日志文件通常保存在 /var/log/ 目录下。常见的日志文件类型包括系统安全日志、邮件日志、服务日志等。这些日志对于系统的监控和维护至关重要。

image-20240822144539609

系统常用的日志

image-20240822144849822

日志管理服务 rsyslogd

CentOS7.6日志服务是 rsyslogd,CentOS6.x日志服务是 syslogd 。rsyslogd 功能更强大。rsyslogd 的使用、日志文件的格式,和 syslogd 服务兼容的。原理示意图

image-20240822145440535
  • 查询 Linux 中的 rsyslogd 服务是否启动

    ​ ps aux | grep “rsyslog” | grep -v "grep’

  • 查询 rsyslogd 服务的自启动状态

    systemctl list-unit-files | grep rsyslog

  • 配置文件:/etc/rsyslog.cont
    编辑文件时的格式为: * . * 存放日志文件

    其中第一个 * 代表日志类型,第二个 * 代表日志级别

    1)日志类型分为:
    	auth              ##pam 产生的日志
    ​	authpriv        ##ssh、ftp等登录信息的验证信息
    ​	cron            ##时间任务相关
    ​	kern            ##内核
    ​	lpr             ##打印
    ​	mail            ##邮件
    ​	mark(syslog)-rsyslog##服务内部的信息,时间标识
    ​	news            ##新闻组
    ​	user            ##用户程序产生的相关信息
    ​	uucp            ###unix to nuix copy主机之间相关的通信
    ​	local 1-7       ##自定义的日志设备
    
    2)日志级别分为:
    	debug           ##有调试信息的,日志通信最多
    	info            ##一般信息日志,最常用
    	notice          ##最具有重要性的普通条件的信息
    	warning         ##警告级别
    	err             ##错误级别,阻止某个功能或者模块不能正常工作的信息
    	crit            ##严重级别,阻止整个系统或者整个软件不能正常工作的信息
    	alert           ##需要立刻修改的信息
    	emerg           ##内核崩溃等重要信息
    	none            ##什么都不记录
    

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

✓ 由日志服务rsyslogd记录的日志文件,日志文件的格式包含以下4列:

  1. 事件产生的时间
  2. 产生事件的服务器的主机名
  3. 产生事件的服务名或程序名
  4. 事件的具体信息

日志轮替

基本介绍

日志轮替是通过移动并改名旧的日志文件,同时创建新的日志文件的方式来管理日志文件的大小和数量。logrotate 是实现日志轮替的主要工具,它可以根据配置文件自动执行日志轮替。当旧日志文件超出保存的范围之后,就会进行删除。

  • 文件命名:可以通过 /etc/logrotate.conf 配置文件中的 dateext 参数决定日志文件的命名方式。
  • 日志加入轮替:建议将新的日志轮替策略放在 /etc/logrotate.d/ 目录中,便于维护和管理。

日志轮替文件命名

  1. centos7 使用 logrotate 进行日志轮替管理,要想改变日志轮替文件名字,通过 /etc/logrotate.conf 配置文件中 “dateext” 参数:
  2. 如果配置文件中有“dateext”参数,那么日志会用日期来作为日志文件的后缀。例如:“secure-20201010”,这样日志文件名不会重叠,也就不需要日志文件的改名.只需要指定保存日志个数,删除多余的日志文件即可。
  3. 如果配置文件中没有“dateext”参数,日志文件就需要进行改名了。当第一次进行日志轮替时,当前的“secure”日志会自动改名为“secure.1”,然后新建“secure”日志,用来保存新的日志。当第二次进行日志轮替时,然后新建“secure.1”会自动改名为“secure.2”,当前的“secure”日志会自动改名为“secure.1”,然后也会新建“secure”日志,用来保存新的日志,以此类推。

如何把自己的日志加入日志轮替

1)第一种方法是直接在/etc/logrotate.conf 配置文件中写该日志的轮替策略。

2)第二种方法是在/etc/logrotate.d/目录中新建立该日志的轮替文件,在该轮替文件中写入正确的轮替策略,因为该目录中的文件都会被“include”到主配置文件中,所以也可以把日志加入轮替。

3)推荐使用第二种方法,因为系统中需要轮替的日志非多,如果全都直接写入/etc/logrotate.conf 配置文件,那么这个文件的可管理性就会非常差,不利于此文件的维护.

日志轮替机制原理

日志轮替之所以可以在指定的时间备份日志,是依赖系统定时任务。通过 /etc/cron.daily/ 目录下的 logrotate 脚本执行。1ogrotate 通过这个文件依赖定时任务执行的。在指定的时间内,系统会自动备份日志并清理旧的日志文件。

ls -l /etc/cron.daily/
image-20240822152713389

guangzhou.aliyuncs.com/nlcimags/202408221527432.png" alt=“image-20240822152713389” style=“zoom:67%;” />

image-20240822152732463

文章到这里就结束了,如果有什么疑问的地方请指出,诸大佬们一起来评论区一起讨论😁
希望能和诸大佬们一起努力,今后我们一起观看感谢您的阅读🍻
如果帮助到您不妨3连支持一下,创造不易您们的支持是我的动力🤞

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晨犀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值