![如何将systemd服务文件的[SERVICE]部分中的SyslogIdentifier设置为空?](https://linux22.com/image/5850/%E5%A6%82%E4%BD%95%E5%B0%86systemd%E6%9C%8D%E5%8A%A1%E6%96%87%E4%BB%B6%E7%9A%84%5BSERVICE%5D%E9%83%A8%E5%88%86%E4%B8%AD%E7%9A%84SyslogIdentifier%E8%AE%BE%E7%BD%AE%E4%B8%BA%E7%A9%BA%EF%BC%9F.png)
我想在服务文件的部分SyslogIdentifier
中设置为[SERVICE]
systemd
空的,这样日志中就没有任何前缀。我尝试了以下选项:
1) 不提及任何内容:
SyslogIdentifier=
>>> 结果:与默认行为类似,日志以进程名称为前缀。
2) 空字符串:
SyslogIdentifier=""
>>> 结果:带双引号 (" ") 的空字符串按原样添加前缀。
3) 转义字符:
SyslogIdentifier=\s
>>> 结果:\s 已成为日志的前缀。
4) 空白:
SyslogIdentifier= (few blank spaces)
>>> 结果:与默认行为类似,日志以进程名称为前缀。
5) 用单引号括起来的空格:
SyslogIdentifier=' '
>>> 结果:单引号 (' ') 按原样添加前缀。
我不希望在日志中添加任何前缀。
谁能告诉我该怎么做吗?
SyslogIdentifier=
将进程名称设置为发送到日志系统或内核日志缓冲区的日志行的前缀。如果未设置,则默认为执行进程的进程名称。此选项仅在
StandardOutput=
或StandardError=
设置为syslog
、journal
或kmsg
(或与 组合使用相同设置)时有用+console
。
答案1
一种方法是使用零宽度空间作为SYSLOG_IDENTIFIER
。
如果您不知道如何键入/输入它,只需复制/粘贴下面的行(因为它在符号后面已经包含一个零宽度空格=
...)
SyslogIdentifier=