flutentdのインストールから設定
いい加減サーバに入ってログ見て原因さぐって、、というのが手間になってきた。
もうちょっとさくっとログをチェックしたいですね。
さらにいうとログ監視もこれでできちゃうともっと素敵ですね。
環境
- CentOS6系
- 今回はfluentdのログ吐き出し先をmongodbにした
fluentdのインストール
[treasuredata] name=TreasureData baseurl=http://packages.treasure-data.com/redhat/$basearch gpgcheck=1 enabled=0 gpgkey=http://packages.treasure-data.com/redhat/RPM-GPG-KEY-td-agent
- インストール
# yum install td-agent
チューニング
- flutentdを利用するにあたってサーバをチューニングしておいた方がよいらしい
- NTPは必須でしょうね
- ファイルディスクリプタもやっておいたほうがよいかと
- kernel周りは、、環境次第でしょうね。大量のデータを取り扱う場合は設定した方がよいかもですが、場合によってはトラブルになることもありますし。
設定
- まずはApacheのログを取得してみる。アウトプットはmongodb。
- /etc/td-agent/td-agent.conf
# # Apache log # <source> type tail path /var/log/httpd/access_log tag apache.access pos_file /var/log/td-agent/httpd-access_log.pos format apache2 </source> ## mongdbに吐き出す <match apache.access> type mongo host localhost port 27017 database fluentd collection apache_access capped capped_size 1024m flush_interval 10s </match>
- td-agentを起動
# /etc/init.d/td-agent start
確認
- httpで適当にアクセスしてから確認
# mongo > show dbs fluentd 2.0146484375GB local 0.078125GB test 0.203125GB > use fluentd > db.apache_access.count() 53 > db.apache_access.find() ※結果がずらっと
- 取れてましたね。結構簡単で驚きでした。
- まぁこれをどう使うかが大事なわけで。今度はzabbixと連携してみます。