rsyslogd和字符#012和#015

use*_*422 12 rsyslog

我使用rsyslogd 5.8版.字符\n和\ r \n在日志文件中转储为#012和#015.

示例(输入命令:printf"example-test [\ r \n]"| logger):

<13> 2014-07-07T11:01:03.254 root:  example-test[#015]
Run Code Online (Sandbox Code Playgroud)

我宁愿用十六进制转储它们:#0A和#0D(或其他更易读的格式).

我怎么能通过修改rsyslogd配置文件来做到这一点?

use*_*422 9

阅读rsyslogd版本5.8.3和7.6.0的源代码后,看起来:

  • 由于八进制基(#012,#015)是硬编码的,因此不能使用十六进制基数.
  • 可以打开或关闭转义:参数$ EscapeControlCharactersOnReceive和Escape8BitCharactersOnReceive

该文档确认:http : //www.rsyslog.com/doc/rsconf1_escapecontrolcharactersonreceive.html http://www.rsyslog.com/doc/rsconf1_escape8bitcharsonreceive.html