我的基于 NodeJS 的服务使用 console.log 将多行日志写入 journald。但是,日志会按每行 (\n) 进行拆分。如何在单个日志条目中包含多行消息?
谢谢你!
答案1
较新版本或 rsyslog(我认为 > 8.0)添加了一个配置选项来阻止将换行符转换为 \n 字符的行为。但由于 rsyslog 是基于文本的,因此除非您使用自己的日志格式化程序将多行拆分为单独的日志条目,否则您无法实现所需的目的。
我建议考虑使用系统日志 (journad),它可以像您预期的那样处理换行符。此外,它还允许结构化日志记录。这样,您可以将堆栈跟踪和异常类或代码发送到单独的字段,以便于过滤。