我的 logback syslog appender 有什么问题?
What's wrong with my logback syslog appender?
我正在尝试让 logback syslog appender 工作,但我肯定有一些配置错误。我创建了一个 small sample project,我认为它应该记录到系统日志,但它没有。
我确定我漏掉了一些愚蠢的东西。这是来自 logback.xml 的附加程序:
<appender name="SYSLOG" class="ch.qos.logback.classic.net.SyslogAppender">
<syslogHost>localhost</syslogHost>
<facility>USER</facility>
<suffixPattern>[%thread] %logger %msg</suffixPattern>
</appender>
我已经尝试明确添加端口 (514),但没有成功。在我试过的两个系统上,我已经验证系统日志正在使用 logger "test message"
接收输入,然后拖尾 /var/log/messages 或 /var/log/system.log.
我需要更改什么才能logback/slf4j 记录到系统日志?
你的代码没有问题,问题是系统配置。
使用您提供的测试项目,我能够使系统日志附加程序工作(Ubuntu 14.10)。
以下是一些步骤:
- 编辑
/etc/syslog.conf
并确保您已启用网络系统日志:
# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
# provides TCP syslog reception
# note that logback seems to use UDP, so this isn't strictly necessary.
$ModLoad imtcp
$InputTCPServerRun 514
- 如果更改配置(重新加载不起作用),请重新启动 rsyslog (
service rsyslog restart
)
- 检查系统日志是否正在使用
lsof -i | grep syslog
监听
结果:
我正在尝试让 logback syslog appender 工作,但我肯定有一些配置错误。我创建了一个 small sample project,我认为它应该记录到系统日志,但它没有。
我确定我漏掉了一些愚蠢的东西。这是来自 logback.xml 的附加程序:
<appender name="SYSLOG" class="ch.qos.logback.classic.net.SyslogAppender">
<syslogHost>localhost</syslogHost>
<facility>USER</facility>
<suffixPattern>[%thread] %logger %msg</suffixPattern>
</appender>
我已经尝试明确添加端口 (514),但没有成功。在我试过的两个系统上,我已经验证系统日志正在使用 logger "test message"
接收输入,然后拖尾 /var/log/messages 或 /var/log/system.log.
我需要更改什么才能logback/slf4j 记录到系统日志?
你的代码没有问题,问题是系统配置。 使用您提供的测试项目,我能够使系统日志附加程序工作(Ubuntu 14.10)。
以下是一些步骤:
- 编辑
/etc/syslog.conf
并确保您已启用网络系统日志:
# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
# provides TCP syslog reception
# note that logback seems to use UDP, so this isn't strictly necessary.
$ModLoad imtcp
$InputTCPServerRun 514
- 如果更改配置(重新加载不起作用),请重新启动 rsyslog (
service rsyslog restart
) - 检查系统日志是否正在使用
lsof -i | grep syslog
监听
结果: