Help us understand the problem. What is going on with this article?

DockerのFluentd logging driverを使ってみた。

More than 5 years have passed since last update.

Dockerコンテナのログをfluentdで扱う時に、今まで/var/lib/docker/container以下をみていたのですが、なんか嫌だなーと思っていたら。Dockerにfluentd用のLoggind Driverが追加されたので使ってみました。
Docker v1.8から使えるみたいですね。とりあえずアップデートします。

sudo apt-get update
sudo apt-get install lxc-docker

ちなみに公式ドキュメントはこちら
http://www.fluentd.org/guides/recipes/docker-logging

あんまりfluentd側の書き方は慣れてないのですが。td-agent.confを編集します。log-collector.hoge.comは仮のログ集約サーバのホストです。

<source>
    type forward
    port 24224
    bind 0.0.0.0
</source>
<match docker.**>
    type forward
    <server>
      host logs.hoge.com
      port 24224
    </server>
</match>

Dockerコンテナ起動時に--log-driverオプションを加えます。

docker run --log-driver=fluentd {イメージ名}

これで、logs.hoge.com(集約サーバ)にコンテナのログが送られます。

こんな感じ

{"log":"log content","container_id":"f7d520f14333a16144748a44c0d0aa2c442b73d6d97a8335ed3b47b7852fa92d","container_name":"/test","source":"stdout"}

docker logsコマンドは使えなくなるみたいですね。

--log-driverでは他に、json-file、syslog、journald、gelfオプションがあるようです。

https://docs.docker.com/v1.8/reference/logging/overview/

参考

http://www.fluentd.org/guides/recipes/docker-logging
http://dev.classmethod.jp/cloud/docker-fluentd-logging-driver/

iotlt
IoT縛りの勉強会です。 毎月イベントを実施しているので是非遊びに来てください! 登壇者を中心にQiitaでも情報発信していきます。 https://iotlt.connpass.com
https://iotlt.connpass.com/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away