温馨提示×

Linux日志级别设置指南

小樊
44
2025-09-05 11:17:54
栏目: 智能运维

一、日志级别说明

Linux常见日志级别(从低到高):

  • DEBUG:调试信息,最详细。
  • INFO:一般信息,记录正常操作。
  • NOTICE:通知信息,正常但重要。
  • WARNING:警告信息,潜在问题。
  • ERROR:错误信息,已发生错误。
  • CRIT:严重错误,系统可能无法运行。
  • ALERT:紧急情况,需立即处理。
  • EMERG:系统不可用,最高级别。

二、设置方法

1. 系统日志(syslog/rsyslog)

  • 配置文件
    • 旧系统:/etc/syslog.conf
    • 新系统:/etc/rsyslog.conf/etc/rsyslog.d/*.conf
  • 修改规则
    • 全局设置:*.* /var/log/syslog;level(如*.warning /var/log/syslog)。
    • 特定服务:service.* /var/log/service.log;level(如authpriv.* /var/log/secure)。
  • 重启服务sudo systemctl restart rsyslog

2. systemd-journald

  • 配置文件/etc/systemd/journald.conf
  • 设置参数
    • SystemMaxUse=100M:限制日志大小。
    • 通过journalctl命令过滤日志级别(如journalctl -p err查看错误日志)。
  • 重启服务sudo systemctl restart systemd-journald

3. 应用程序日志

  • 常见应用
    • Nginx:修改/etc/nginx/nginx.conferror_log级别(如error_log /var/log/nginx/error.log warn;)。
    • MySQL:修改/etc/my.cnflog_warnings(0-3,0为无警告)。
    • Apache:修改/etc/httpd/conf/httpd.confLogLevel(如LogLevel error)。
  • 重启服务sudo systemctl restart nginx/mysql/apache2

三、管理与优化

  • 查看日志
    • journalctl -f:实时监控日志。
    • tail -f /var/log/syslog:查看系统日志。
  • 清理日志
    • 使用logrotate工具自动轮转(编辑/etc/logrotate.conf)。
    • 手动清理:sudo journalctl --vacuum-size=100M
  • 权限控制
    • 确保日志文件权限正确(如sudo chown root:adm /var/log/syslogchmod 640)。

四、环境建议

  • 生产环境:设置为WARNINGERROR,减少日志量。
  • 开发环境:设置为DEBUGINFO,便于调试。

参考来源:[1,2,3,4,5,6,7,8,9,10,11,12]

0