我在服务器上安装了metalog并使用C ++应用程序编写日志。 这是我打印到系统日志的方式
openlog(facility.c_str(), LOG_CONS | LOG_PID | LOG_NDELAY | LOG_PERROR, LOG_LOCAL0);
syslog(LOG_INFO, "%s", stderr_msg.c_str());
我的所有日志均以以下格式打印:
<date> [kernel] <log text message>
例如
Dec 05 12:19:31 [kernel] this is an example of log
我要更改它,而不是[kernel],它将打印相关模块。 或至少是我的应用程序名称,而不是“内核”。 我该怎么办?
答案 0 :(得分:0)
我的问题是我从另一个进程启动了Metalog,这将其stdout和stderr指向/ dev / kmsg,因此Metalog的分叉过程也是如此。这导致日志看起来像来自内核。