9

Papertrailを使用して Docker コンテナーのログを収集しています。そのために、コンテナーを作成するときに syslog ドライバーを使用しました。

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  ...
4

1 に答える 1

13

あなたはそれをすることはできません。その機能を追加する保留中の 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
于 2015-04-26T20:23:17.240 に答える