避免 systemd 单元(服务)登录到日志

Val*_*rio 5 server systemd systemd-journald

为了在某​​些磁盘上生成指标,我设置了systemd.timer + systemd.service

该计时器每 10 秒旋转一次,我想避免每次这个小脚本生成然后成功时我的日记都被垃圾邮件。

日记这样写多行

Jan 04 17:21:31 hostname systemd[1]: personal.service: Succeeded.
-- Subject: Unit succeeded
-- Defined-By: systemd
-- Support: http://www.ubuntu.com/support
--
-- The unit personal.service has successfully entered the 'dead' state.
Run Code Online (Sandbox Code Playgroud)

此外,每次服务启动都会进行审核

Jan 04 17:22:31 hostname audit[1]: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=personal comm="systemd" exe="/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Jan 04 17:22:31 hostname kernel: audit: type=1131 audit(1578158551.035:11612): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=personal comm="systemd" exe="/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Run Code Online (Sandbox Code Playgroud)

da_*_*pin 6

Daniel Aleksandersen 写了一篇关于此的好文章

\n\n

调整或静音 systemd 服务\xe2\x80\x99s 日志记录级别

\n\n

覆盖服务单元:

\n\n
systemctl edit Your.service\n
Run Code Online (Sandbox Code Playgroud)\n\n

添加 LogLevelMax 参数。

\n\n
[Service]\nLogLevelMax=2\n
Run Code Online (Sandbox Code Playgroud)\n\n

标准日志级别为紧急 (0)、警报 (1)、严重 (2)、错误 (3)、警告 (4)、通知 (5)、信息 (6) 和调试 (6)。\n重新启动服务:

\n\n
systemctl daemon-reload\nsystemctl restart Your.service\n
Run Code Online (Sandbox Code Playgroud)\n\n

静音标准输出

\n\n

创建服务单元覆盖:

\n\n
systemctl edit Your.service\n
Run Code Online (Sandbox Code Playgroud)\n\n

将输出定向为空。

\n\n
[Service]\nStandardOutput=null\n#StandardError=null\n
Run Code Online (Sandbox Code Playgroud)\n\n

重新启动服务:

\n\n
systemctl daemon-reload\nsystemctl restart Your.service\n
Run Code Online (Sandbox Code Playgroud)\n\n

该服务将不再将标准输出消息转发到日志。

\n\n

有关此内容的更多详细信息,请访问丹尼尔的博客(上面的链接)并请他喝杯咖啡

\n