温馨提示×

ubuntu syslog如何开启调试

小樊
45
2026-08-16 00:21:38
栏目: 智能运维

在 Ubuntu 上开启 syslog 调试,通常取决于你使用的是哪种 syslog 服务。Ubuntu 常见的是 rsyslog(默认),也可能是 syslog-ng。下面以 rsyslog 为主说明,并补充 syslog-ng 的方式。


一、确认你使用的是 rsyslog

ps -ef | grep rsyslog
# 或
systemctl status rsyslog

如果看到 rsyslogd,说明是 rsyslog。


二、开启 rsyslog 调试模式

方法 1:临时开启调试(重启失效)

sudo rsyslogd -dn
  • -d:开启调试
  • -n:前台运行(不 daemonize)

⚠️ 这种方式会占用终端,一般用于排查问题


方法 2:修改 rsyslog 配置文件(推荐)

1️⃣ 编辑配置文件

sudo vim /etc/rsyslog.conf

2️⃣ 开启调试选项

在文件顶部或合适位置添加:

$DebugLevel 2
$LogInternalMsgToStderr on

说明:

  • DebugLevel
    • 0:关闭
    • 1:基本调试
    • 2:详细调试(常用)
  • LogInternalMsgToStderr:把 rsyslog 自身日志输出到 stderr

3️⃣ 重启 rsyslog

sudo systemctl restart rsyslog

方法 3:让 rsyslog 输出调试日志到文件

$DebugFile /var/log/rsyslog-debug.log
$DebugLevel 2

然后:

sudo systemctl restart rsyslog
tail -f /var/log/rsyslog-debug.log

三、查看 syslog 日志

tail -f /var/log/syslog

或:

journalctl -u rsyslog -f

四、仅开启某个模块的调试(高级)

rsyslog 支持模块级调试,例如:

module(load="imuxsock" sysSock.use="off")
$DebugLevel 2

或:

$DebugLevel 2
$LogInternalMsgToStderr on

五、如果你使用的是 syslog-ng

1️⃣ 编辑配置

sudo vim /etc/syslog-ng/syslog-ng.conf

2️⃣ 开启调试

options {
    debug(yes);
    keep-timestamp(yes);
};

3️⃣ 重启

sudo systemctl restart syslog-ng

查看日志:

journalctl -u syslog-ng -f

六、快速排查建议

问题 命令
rsyslog 是否运行 systemctl status rsyslog
查看启动错误 journalctl -u rsyslog
测试日志 logger "test message"
查看配置语法 rsyslogd -N1

七、生产环境建议

  • ✅ 调试完成后 关闭 DebugLevel
  • ✅ 避免长期开启调试(影响性能)
  • ✅ 重启后确认配置生效

如果你能说明:

  • Ubuntu 版本(如 20.04 / 22.04)
  • 想调试 应用日志 还是 syslog 本身
  • 是否容器 / 云服务器

我可以给你更精确的配置示例。

0