systemd:如何为stdout / stderr上的消息设置默认日志级别?

时间:2017-11-15 16:50:07

标签: linux logging systemd

我正在运行一个应用程序作为systemd服务。应用程序按照systemd日志记录规则将其输出记录到stdout - 在每个日志消息前面加上< x>其中x是优先级(日志级别)。

<6> this is info
<7> this is debug
<4> this is warning

我想要的是只将优先级&lt; = 6存储到日志中,因为我在flashdisk上运行。我不想存储调试消息以及消息/&#34;垃圾&#34;未标记为&lt;&gt;。

似乎不是问题 - MaxLevelStore = info。

但是问题在于&#34;垃圾&#34;写入stdout默认情况下标记为priority = 6(info),也存储在journal db中。我想要的是默认情况下将其标记为debug(7),因此从以下输出:

<6> this is info
<7> this is debug
this is some trash
<4> this is warning

......只会......

<6> this is info
<4> this is warning

...存储到期刊。

如果有可能,我在所有文档中都找不到。任何人

谢谢

1 个答案:

答案 0 :(得分:1)

您要在服务的SyslogLevel=debug部分中使用[Service]。这将导致所有没有优先级前缀的消息默认具有调试级别(7)。

文档: https://www.freedesktop.org/software/systemd/man/systemd.exec.html#SyslogLevel=