LoginSignup
12
13

More than 5 years have passed since last update.

今更ですけど、fluentdについてマトメてみる(その1)

Posted at

個人的にfluentdをちゃんと分かっていないと思ったので、勉強の意味もこめて改めて纏めてみました。

fluentdってそもそもどういうものか

公式サイトはこちらです。

スクリーンショット 2014-12-22 11.44.40.png

fluentdを一言で言えばイベントログ収集ツール。Treasure data方が作成されたもので、ログの収集や転送などができます(複数台のサーバのログを収集できる)。プラグインがあって、様々なシステムで利用することができます。

参考:イベントログ収集ツール fluent リリース!

fluentdを使ってみる

インストール

方法は幾つかあるようです。

*gemで入れる
*yumで入れる

参考:fluentdのインストール方法

試しに使う

サンプルとしてローカルで動かしているrailsアプリケーションのログをfluentdを使って収集してみます。

まずはfluentdの設定ファイルを作成します。

fluentd.conf
<source>
  type tail
  format none
  path /usr/local/*****/****/log/development.log
  tag hoge_log.access
</source>

<match hoge_log.access>
  type file
  path /usr/local/****/fluent_log/test.log
</match>

sourceで指定しているpathの値はサンプルrailsアプリのログの出力先です。
matchのpathはfluentdが収集したログを出力する先(今回はtypeをfileで指定してファイルとして出力)です。
それでは起動してみます。

fluentd -c fluentd.conf -vv &

上のように設定ファイルを指定して起動します。プロセスをチェックして起動出来ていることを確認してみると

スクリーンショット 2014-12-22 10.54.46.png

で、railsアプリを起動して適当に動かしてみると・・

スクリーンショット 2014-12-22 11.32.55.png

左がrailsアプリのログで右がfluentdのログですが、ログ出力されているなーというのが分かるかと思います。

fluentdの設定を見てみる

fluentdの設定ファイルの記述方法について整理します。

source

ログの入力先を定義します。入力もととしては標準入力、ファイル、ポート指定のHTTP通信などがあります。

type

ログの入力もとを指定

  • forward: 標準出力
  • tail: ファイル(上の例ではこちら)
  • http: http通信

path

入力もとファイルのパス

tag

matchディレクティブで指定しているもの。sourceで入力を定義し、matchで出力を定義しますが、tagはsourceで入力されたものをどのmatchで受け取るか関連付けるもの。

match

収集したログの出力先を定義します。先ほどの例のようにファイルに出力する方法もあれば、標準出力、他のfluentdに転送するなど色々あります。

type

収集したログの出力先を指定

  • stdout: 標準出力
  • file: ファイル(上の例ではこちら)
  • http: http通信

path

入力もとファイルのパス

include

他のfluentd設定ファイルをincludeすることができます。

他のfluentdとの連携

ここはその2で書きます。

12
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
13