contenttaichino.com永遠のネバーランドCentOSでfluentdとzabbixを使い始めたメモこのエントリを読んでからfluentdを導入したいと思ってたのですが、手元に頑張って監視するに値するサーバが無くてほったらかしてました。Netが監視しても良いかな位になったのでfluentdを導入してみました。先ほどのリンク中のスライドでzabbixにグラフを書かせてたので、真似してzabbixもついでに導入しています。fluentdをインストールします。td-agentという名前でRPMパッケージが提供されていますので、そちらを利用します。start次に動作確認します。/usr/lib64/fluent/ruby/bin/に色々とコマンドがインストールされているので、一度眺めておくと良いかもしれません。以下ではその中のfluent-catを使ってログを書いてみます。すると/var/log/td-agentの下にtest***というファイルが出来ていたら成功です。中を確認するとfluent-catで書いた内容が出力されています。World!"}次にzabbixをインストールします。監視サーバにzabbix-serverを、監視対象ホストにはzabbix-agentをそれぞれインストールします。zabbix-serverにはバックエンドにmysqlを使う場合、postgresqlを使う場合でパッケージが別に用意されています。ここではmysqlを使用しています。監視サーバにzabbixをインストールします。監視サーバ自体も監視対象なのでserverとagentの両方をインストールしています。restartインストール出来たら、http://hostname/zabbixにブラウザでアクセスします。初期設定用のウィザードが表示されるので、次へを押して行くと、エラーが出ました。PHPの設定を変えないとダメなようです。仕方が無いのでphp.iniを編集します。recommendedの値にしました。restart無事設定できました。あと監視対象ホストにもzabbix-agentを入れておきます。設定は完了したものの、zabbixにホストを追加すると幾つかエラーが出ていました。テンプレートとホストのミスマッチが原因なので、このエントリ等を参考に修正します。以上でfluentもzabbixもインストール出来たので、早速ログを元にステータスコードとレスポンスタイムをグラフにします。プラグインをインストールします。fluent-plugin-zabbix次にfluentの設定をして行きます。僕はnginxではなくてuwsgiのログを元にグラフを書きたいので、以下のような設定にしました。uwsgi</match>次にzabbix側でfluentから送られてくるデータを受け取るアイテムを追加します。内容はこんな感じです。trapper”にして無くて少しハマりました。後はせっせとアイテムを追加して、まとめてグラフにしたらこんなグラフになりました。fluentは凄く良くて、もっと早く導入すれば良かったと思いました。個人的にはfluentでログを一回吸うプロセスがが良いです。/var/log以下とかドラクエでいうとネクロゴンドの洞窟みたいな感じじゃないですか。できれば行きたくないし早く立ち去りたい。fluentでuwsgi.logだけ吸うと、凄い気が楽です。ログと向き合おうって気になります。fluentでカバー出来るログを増やして行きたいです。あとfluentって別にいわゆるログに縛られない雰囲気なんですよね。plaggerがホスト跨いで使えるようになった感じです。プラグインとか触ってないんですが、もっと色々応用出来る気がします。