更改 docker 的系统日志驱动程序发送的应用名称
Change the app-name sent by docker's syslog driver
我正在使用 Papertrail 来收集我的 Docker 容器的日志。
为此,我在创建容器时使用了系统日志驱动程序:
sudo docker run --name my_container --log-driver=syslog ...
... 并将以下行添加到我的 /etc/rsyslog.conf
*.* @logsXXX.papertrailapp.com:YYYY
最后,我得到的 Papertrail 日志是这样的:
Apr 24 13:41:55 ip-10-1-1-86 docker/3b00635360e6: 10.0.0.5 - - [24/Apr/2015:11:41:57 +0000] "GET /healthcheck HTTP/1.1" 200 0 "-" "" "-"
问题是应用名称(参见 syslog RFC)是 docker/container_id
我宁愿有容器名称(或主机)。但我不知道该怎么做。
我尝试为我的容器设置一个特定的主机名,如下所示,但效果并不好:
sudo docker run --name my_container -h my_container --log-driver=syslog ...
你做不到。这是添加该功能的待定 PR:https://github.com/docker/docker/pull/12668
希望它能尽快合并。我想你总是可以自己动手。
更新:看起来这是为 Docker 1.8
准备的
更新:现在可以了:
docker run --name my_container --log-driver=syslog --log-opt syslog-tag=my_application
我正在使用 Papertrail 来收集我的 Docker 容器的日志。 为此,我在创建容器时使用了系统日志驱动程序:
sudo docker run --name my_container --log-driver=syslog ...
... 并将以下行添加到我的 /etc/rsyslog.conf
*.* @logsXXX.papertrailapp.com:YYYY
最后,我得到的 Papertrail 日志是这样的:
Apr 24 13:41:55 ip-10-1-1-86 docker/3b00635360e6: 10.0.0.5 - - [24/Apr/2015:11:41:57 +0000] "GET /healthcheck HTTP/1.1" 200 0 "-" "" "-"
问题是应用名称(参见 syslog RFC)是 docker/container_id
我宁愿有容器名称(或主机)。但我不知道该怎么做。 我尝试为我的容器设置一个特定的主机名,如下所示,但效果并不好:
sudo docker run --name my_container -h my_container --log-driver=syslog ...
你做不到。这是添加该功能的待定 PR:https://github.com/docker/docker/pull/12668
希望它能尽快合并。我想你总是可以自己动手。
更新:看起来这是为 Docker 1.8
准备的更新:现在可以了:
docker run --name my_container --log-driver=syslog --log-opt syslog-tag=my_application