加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 在syslog中更改日期格式

发布时间:2020-12-13 18:51:01 所属栏目:Linux 来源:网络整理
导读:无论如何我们可以更改syslog记录的特定日志文件中的日期格式吗?我不想改变记录所有日志的方式,而只是改变日志文件. 编辑:我正在使用syslogd(在FreeBSD中) 这就是我的文件现在的样子: Dec 5 07:52:10 Log data 1Dec 5 07:52:10 Log data 2Dec 5 07:52:10 L
无论如何我们可以更改syslog记录的特定日志文件中的日期格式吗?我不想改变记录所有日志的方式,而只是改变日志文件.

编辑:我正在使用syslogd(在FreeBSD中)

这就是我的文件现在的样子:

Dec  5 07:52:10 Log data 1
Dec  5 07:52:10 Log data 2
Dec  5 07:52:10 Log data 3

这就是我希望它看起来像:

20131205 07:52:10 Log data 1
20131205 07:52:10 Log data 2
20131205 07:52:10 Log data 3

我的syslog.conf看起来像这样,其中/var/log/my_log.log是我的日志文件:

+@
*.notice;local0.none;local1.none;local2.none;authpriv.none;kern.debug;mail.crit;news.err        /var/log/messages
security.*                                      /var/log/security
auth.info;authpriv.info                         /var/log/auth.log
mail.info                                       /var/log/maillog
ftp.info                                        /var/log/xferlog
cron.*                                          /var/log/cron
*.=debug                                        /var/log/debug.log
console.info                                    /var/log/console.log

local1.info                                     /var/log/my_log.log

解决方法

即使您找到了不同的解决方案,我也会为其他人提供答案.

编辑syslog配置文件(例如,在Debian上:/etc/syslog-ng/syslog-ng.conf).

然后声明一个这样的新模板:

template template_date_format {
    template("${YEAR}-${MONTH}-${DAY} ${HOUR}:${MIN}:${SEC} ${HOST} ${MSGHDR}${MSG}n");
    template_escape(no);
};

这是一个示例,但您可以根据user9645的答案中链接的syslog文档使用不同的宏.

之后,在此配置文件中查找要更改输出格式的所有文件,并将此模板应用于它们.

例如,我想更改/var/log/auth.log输出格式,然后我更改:

destination d_auth { file("/var/log/auth.log"); };

至 :

destination d_auth { file("/var/log/auth.log" template(template_date_format)); };

然后重新启动syslog(service syslog-ng restart)并尝试登录以查看auth.log中的更改.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读