您的位置:首页 > 新闻 > 资讯 > Linux日志管理-日志轮转

Linux日志管理-日志轮转

2025/2/25 6:25:56 来源:https://blog.csdn.net/mohuanfenghuang/article/details/142322717  浏览:    关键词:Linux日志管理-日志轮转

今天给伙伴们分享一下Linux 计划任务-计划任务的定时任务,希望看了有所收获。

我是公众号「想吃西红柿」「云原生运维实战派」作者,对云原生运维感兴趣,也保持时刻学习,后续会分享工作中用到的运维技术,在运维的路上得到支持和共同进步!

如果伙伴们看了文档觉得有用,欢迎大家关注我的公众号,获取相关文档。爱运维,爱生活。

一、日志重要性

  • Linux 系统日志对管理员来说,是了解系统运行的主要途径,因此需要对 Linux 日志系统有个详细的了解。
  • Linux 系统内核和许多程序会产生各种错误信息、告警信息和其他的提示信息,这些各种信息都应该记录到日志文件中,完成这个过程的程序就是 rsyslog,rsyslog 可以根据日志的类别和优先级将日志保存到不同的文件中。

二、日志系统rsyslog

1、常见系统日志

/var/log/message:记录Linux操作系统常见的系统和服务错误信息,服务状态,临时信息
/var/log/boot.log:录了系统在引导过程中发生的事件,就是Linux系统开机自检过程显示的信息
/var/log/lastlog :记录最后一次用户成功登陆的时间、登陆IP等信息(一般通过命令 lastlog 查看)
/var/log/secure :Linux系统安全日志,记录用户和工作组变坏情况、用户登陆认证情况
/var/log/btmp :记录Linux登陆失败的用户、时间以及远程IP地址   查看命令是 last -f  /var/log/btmp 
/var/log/wtmp:该日志文件永久记录每个用户登录、注销及系统的启动、停机的事件,使用last命令查看
/var/log/cron  与定期执行任务相关的日志文件

2、rsyslog 日志管理

  • rsyslogd:绝大部分日志记录,和系统操作有关,安全,认证sshd,su,计划任务at,cron… httpd/nginx/mysql: 可以自己的方式记录日志
[root@edenluo.com ~]# ps aux |grep rsyslogdroot        752  0.0  0.2 216440  5548 ?        Ssl  20:18   0:00 /usr/sbin/rsyslogd -n
  • 日志配置主文件
[root@edenluo.com ~]# /etc/rsyslog.conf 
# 子配置目录
/etc/rsyslog.d/       # 必须是以。conf结尾的文件

3、日志类型(设备)

  • auth pam 产生的日志,系统认证日志

  • authpriv ssh,ftp 等登录信息的验证信息

  • cron 时间任务相关,计划任务

  • kern 内核

  • lpr 打印

  • mail 邮件

  • mark(syslog)-rsyslog 服务内部的信息,时间标识

  • news 新闻组

  • user 用户程序产生的相关信息

  • local0~7 自定义的日志设备 留给用户用的

  • local0-local7 8 个系统保留的类, 供其它的程序使用或者是用户自定义

4、日志优先级 rsyslog

日志级别分为:7种日志级别代号0-7

  • 0 debug 调试程序产生的信息, 程序所有的执行过程,只有研发同学,(运维,测试同学)调试
  • 1 info 一般信息的日志,最常用 错做过程,用户访问,有动作就记录 通用性消息,一般用来提供有用信息。
  • 2 notice 具有重要性的普通条件的信息 不是错误,但是可能需要处理
  • 3 warning 警告级别,关注有没有持续严重,提出优化方案 有问题,但是不影响服务,潜在问题,不定时炸弹
  • 4 err 一般错误级别,阻止某个功能或者模块不能正常工作的信息
  • 5 crit 严重级别,危险情况,,阻止整个系统或者整个软件不能工作的信息 例如硬盘错误,可能会阻碍程序的部分功能。
  • 6 alert 需要立即修复的告警。
  • 7 emerg 内核崩溃等严重信息,紧急情况,系统不可用(例如系统崩溃),一般会通知所有用户
  • 8 none 什么都不记录

5、日志的输入规则

  • . info 大于等于 info 级别的信息全部记录到某个文件

  • .=级别 仅记录等于某个级别的日志 auth.=info

    • 例: .=info 只记录 info 级别的日志
  • .! 级别 除了某个级别意外,记录所有的级别信息 # 过滤规则,非(不是) 过滤 auth.*,!err

    • 例.!err 除了 err 外记录所有
  • .none 指的是排除某个类别 auth.none

    • 例: mail.none 所有 mail 类别的日志都不记录
  • ‘’*“ 代表系统产生的所有日志,所有日志级别

6、日志输入的动作

1、记录到普通文件或设备文件::
*.* /var/log/file.log 		# 绝对路径
2、输出到指定终端
*.* /dev/pts/0
测试: logger -p local3.info ‘KadeFor is testing the rsyslog and logger ‘ logger 命令用于产生日志
3、转发到远程::
*.* @192.168.0.1 			# 使用UDP协议转发到192.168.0.1的514(默认)端口
*.* @@192.168.0.1:514  	     # 使用TCP协议转发到192.168.0.1的514(默认)端口
4、发送给用户(需要在线才能收到)::
*.* root
*.* root,kadefor,up01 		# 使用,号分隔多个用户
*.* * 					   # *号表示所有在线用户
5、忽略,丢弃::
local3.* ~                   # 忽略所有local3类型的所有级别的日志
6、执行脚本::
local3.* ^/tmp/a.sh          # ^号后跟可执行脚本或程序的绝对路径
# 日志内容可

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com