Logback 只会将消息记录到系统日志一次

Logback will only log a message to syslog once

我已经尝试了几个使用 logback 写入 syslog 的示例,但我发现唯一有效的是这个 JavaCodeGeeks example。它向系统日志写入一条消息,但无论我 运行 代码多少次,它都只写入一次消息。如果我更改消息,它会将其写入系统日志,但只会写入一次。

我在 Ubuntu 19.10。我已经从 /etc/rsyslog.conf 中取消注释以下四行并重新启动:

# provides UDP syslog reception
module(load="imudp")
input(type="imudp" port="514")

# provides TCP syslog reception
module(load="imtcp")
input(type="imtcp" port="514")

我对 javacodegeeks 代码所做的唯一更改是注释掉 logback.xml 中的远程附加程序。它只记录到本地主机系统日志。

是什么导致了这种奇怪的行为?

要记录您必须设置的所有消息

$RepeatedMsgReduction off

/etc/rsyslog.conf 中并重新启动 rsyslog。

https://www.rsyslog.com/doc/v8-stable/configuration/action/rsconf1_repeatedmsgreduction.html

在 Ubuntu 19.10 中默认为 on