将特定日志从systemd服务重定向到单独的文件不起作用

问题描述 投票:0回答:1

我已经完成了以下配置,将docker日志重定向到/var/log/docker.log

/lib/systemd/system/docker.service

StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=docker-engine

/etc/rsyslog.d/20-docker.conf

if $programname == 'docker-engine' then /var/log/docker.log
if $programname == 'docker-engine' then ~

然后,我做到了

systemctl daemon-reload
systemctl restart docker
systemctl restart rsyslog

但是,当我做cat /var/log/docker.log时,我看不到这样的文件。我使用的是4.4.0-62-generic#83-Ubuntu

ubuntu logging systemd syslog rsyslog
1个回答
1
投票

1)只需创建日志文件

touch /var/log/docker.log
chown syslog:adm /var/log/docker.log
systemctl restart rsyslog

2)如果以前的变体不起作用,请尝试像这样更改/etc/rsyslog.d/20-docker.conf

if $syslogtag contains 'docker-engine' then /var/log/docker.log
if $syslogtag contains 'docker-engine' then stop
© www.soinside.com 2019 - 2024. All rights reserved.