如何将systemd服务文件的[SERVICE]部分中的SyslogIdentifier设置为空?


10

我想SyslogIdentifier 在服务文件[SERVICE]部分中将其设置systemdempty,以便在日志中不添加任何前缀。我尝试了以下选项:

1)什么也没提及:
SyslogIdentifier=
>>>结果:与默认行为类似,日志以进程名作为前缀。

2)空字符串:
SyslogIdentifier=""
>>>结果:带双引号(“”)的空字符串原样带有前缀。

3)转义字符:
SyslogIdentifier=\s
>>>结果:\ s被添加到日志的前缀。

4)空白:
SyslogIdentifier= (few blank spaces)
>>>结果:类似于默认行为,日志以进程名称作为前缀。

5)用单引号引起的空格:
SyslogIdentifier=' '
>>>结果:单引号('')保留了前缀。

我不希望任何内容成为日志的前缀。

谁能告诉我该怎么做?

参考:

SyslogIdentifier=

将进程名称设置为发送到日志记录系统或内核日志缓冲区的日志行的前缀。如果未设置,则默认为已执行进程的进程名称。仅当StandardOutput=StandardError=设置为syslogjournalkmsg (或与结合使用相同的设置+console)时,此选项才有用 。

Answers:


6

一种实现方法是使用零宽度的空格作为SYSLOG_IDENTIFIER
如果您不知道如何输入/输入它,只需复制/粘贴下面的行(因为它已经在=符号后包含了零宽度的空格...)

SyslogIdentifier=​

1
但是,这将在日志前添加零宽度的空间,根据您的日志查看器的不同,您可能看不到该空格,或者将其视为显示其二进制表示形式的字符序列。
Daniel Werner
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.