在 CentOS 系统中,您可以通过修改 syslog 配置文件来自定义日志格式。以下是具体步骤:
/etc/rsyslog.conf
。使用文本编辑器打开它,例如使用 vi 编辑器:sudo vi /etc/rsyslog.conf
$ActionFileDefaultTemplate
这一行。如果没有这一行,请在文件末尾添加以下内容:$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
这将设置默认的日志格式为传统的 syslog 格式。如果您想使用其他格式,可以参考 rsyslog 文档中的其他模板。
MY_CUSTOM_FORMAT
的新模板,如下所示:$template MY_CUSTOM_FORMAT, "%timegenerated% %syslogtag%%msg:::sp-if-no-1st-sp%%msg:::drop-last-lf%\n"
这个模板定义了一个自定义的日志格式,包括时间戳、syslog 标签和消息。您可以根据需要修改这个模板。
*.info;authpriv.none;authpriv.* /var/log/messages
在该行之前添加一行,如下所示:
*.info;authpriv.none;authpriv.* :omfile:$MY_CUSTOM_FORMAT
这将使得所有匹配的日志消息使用 MY_CUSTOM_FORMAT
模板进行格式化,并将日志写入到指定的文件中。
保存并关闭配置文件。
重启 rsyslog 服务以应用更改:
sudo systemctl restart rsyslog
现在,您的 CentOS 系统将使用自定义的日志格式记录日志。请注意,这些更改可能需要一些时间才能生效。