logging.handlers.SysLogHandler在日志消息

时间:2017-03-24 10:43:35

标签: python linux python-2.7 logging syslog

我正在编写一个应用程序,分别使用STDOUT模块和sysloglogging处理程序将logging.StreamHandler()logging.handlers.SysLogHandler(address='/dev/log')同时记录。

格式化程序设置为

    handler.setFormatter(logging.Formatter('%(message)s'))

两种情况。

现在看来,前导空格(我用来缩进某些日志消息以提高可读性)显示在STDOUT中,但不在syslog中。有没有办法让SysLogHandler保留像StreamHandler似乎正在做的空白?

1 个答案:

答案 0 :(得分:1)

syslog守护进程修改显示之前发送给他们的数据。例如,实际发送到syslog守护程序的数据有RFC 5424规定的标题,您在日志查看器中看到的日志中看不到该标题。因此,SysLogHandler级别的消息格式不会保证完全忠实的表示(至少在前导空格时)。