为什么 rsyslog 用 #011 替换选项卡?

Sam*_*ang 5 syslog nginx rsyslog

我正在使用 rsyslog 来收集 nginx 日志。除了用“#011”文本替换通常的选项卡外,一切看起来都不错。

损坏的输出示例:

217.118.93.88#0111473674833.412#0114418687#011...
Run Code Online (Sandbox Code Playgroud)

它应该是什么样子:

217.118.93.88    1473674833.412    4418687    ...
Run Code Online (Sandbox Code Playgroud)

为什么会发生这种情况以及如何禁用这种替换?

谢谢!

Sam*_*ang 2

“快速脏”修复是禁用转义特殊字符。

在rsyslog.conf中添加

$EscapeControlCharactersOnReceive off
Run Code Online (Sandbox Code Playgroud)

尽管对于我的情况来说这是可以接受的解决方案,但对于更复杂的情况可能会有害。