ガジェカツ~在宅SEのガジェット活動ブログ~

在宅SEな筆者がガジェットネタやIT、プログラミングネタを書き連ねるブログ

Webシステムにおけるログ収集系の個人的まとめ

ログ収集系の個人的な超簡易的なまとめです。(qiitaの自分の投稿からの転載です。)

僕みたいなそんなの全然追っかけてないけど、運用監視のシステムを作る必要あったので最近のセオリーを調べないとな-っていう人向け。

既にもっと詳しいものはありますが、自分でまとめたかったのでまとめてみました。 とりあえずは有名どころの名前を羅列して最低限俯瞰できるようにしておきます。

※内容間違っているとかあったら指摘ください。

最近のセオリー

ログ収集+ログ集積+ログ解析(という名のダッシュボード)

これら3つのOSSプロダクトを組み合わせるのがセオリーです。

Zabbixなどのような一まとめは大量のホストがある時やパフォーマンス、柔軟にログを受け入れる必要があるときは使えません。

特に最近ではクラウドサーバーというかdockerなどのコンテナ系仮想技術の影響でサーバー台数も増えたり減ったり可変であったりします。

そんな環境のために、ログ収集に特化したOSSプロダクトが多く出て、それを支える様々なツールが出ているというのが現状かなと思います。

ログ収集

  • Fluentd
  • Logstash
  • Apache Flume

辺りが有名どころ。 個人的には知名度プラグインの多さ、設定の書きやすさからFluentdがおすすめです。

ちなみにバッチ的に使いたいのなら「Embulk」がおすすめ。 ログ収集に入るか分からないですが、zabbixもありかなと。

ログ集積

  • Elasticsearch
  • InfluxDB
  • MongoDB

辺りが有名どころ。

こちらはデファクトスタンダード的にはElasticsearchですが、ログ収集PGは一通りのDBに対応しているので好みで選ぶ。 個人的に業務というか現場で導入するのなら既に動いているMySQLなどの普通のRDBMSに格納して、誰でもどこでも取り出せるようにすると良いと思ってます。

ログ解析・ダッシュボード系

BIツールかPythonRuby、Go言語辺りで解析するのが定石。

BIツールに関しては有償製品ならTableau、OSSならKibana、Grafanaかな。

個人的にはGUIで一通り構築できるGrafanaが好き。

ちなみにTableauでElasticsearchに接続するにはプラグイン的なものが必要なようです。

elasticsearch-tableau-connector https://github.com/mradamlacey/elasticsearch-tableau-connector

参考になりそうなURL

ログ収集して解析したい方へのもっと詳しい参考になりそうなWebページを羅列しておきます。

ログ収集ツールの比較 - Qiita http://qiita.com/ykzkiy/items/eef3071a0667cb4d5136

Elasticsearch導入前に気を付けておきたいこと! - Qiita http://qiita.com/uzresk/items/e0b10c14875b79c450f2

Fluentd + Elasticsearch + Kibanaで行うログの分析と可視化 https://www.slideshare.net/keisuke69/aws-night

Norikra + Fluentd+ Elasticsearch + Kibana リアルタイムストリーミング処理ログ集計… https://www.slideshare.net/daisuke-a-matsui/norikra-fluentd-elasticsearch-kibana

ElasticSearch+Kibanaでログデータの検索と視覚化を実現するテクニックと運用ノウハウ https://www.slideshare.net/y-ken/elasticsearch-kibnana-fluentd-management-tips

Kibanaでsysstatを可視化する https://www.slideshare.net/raihaku/kibanasysstat

Zabbixの監視情報をGrafanaでグラフィカルなダッシュボードに!! | OSS on Azure 技術ブログ http://azure.sios.jp/archives/4979

単一のダッシュボードから関連するすべての製造データを監視 | Tableau Software https://www.tableau.com/ja-jp/solutions/workbook/monitor-all-relevant-production-data-single-dashboard

Elasticsearch、Logstash 、Kibana、によるログの可視化 ~価値のある情報を導き出す方法のご紹介 ~ | キャスレーコンサルティング 技術ブログ http://www.casleyconsulting.co.jp/blog-engineer/%E3%83%87%E3%83%BC%E3%82%BF%E8%A7%A3%E6%9E%90/elasticsearch%E3%80%81logstash-%E3%80%81kibana%E3%80%81%E3%81%AB%E3%82%88%E3%82%8B%E3%83%AD%E3%82%B0%E3%81%AE%E5%8F%AF%E8%A6%96%E5%8C%96%E3%80%80%EF%BD%9E%E4%BE%A1%E5%80%A4%E3%81%AE%E3%81%82%E3%82%8B/

Flumeを活用したAmebaにおける大規模ログ収集システム https://www.slideshare.net/iijiji0314/flumeameba

Hadoopを用いた大規模ログ解析 https://www.slideshare.net/iidashuichi/hadoop-7576791

実運用が分かる、OSSでログ管理入門(1):Fluentd+Elasticsearch+Kibanaで作るログ基盤の概要と構築方法 (2/2) - @IT http://www.atmarkit.co.jp/ait/articles/1704/06/news013_2.html

最後に

以前入っていた現場では、Zabbix+Grafanaという形にしました。 その現場ではTableauを使っていたので運用監視のログ解析も乗せようと思ったのですが、色々あって重すぎて使えない。。。

なので、Grafanaで運用監視のダッシュボード作ったという感じ。 Kibanaと違ってダッシュボードへのデータを載せる作業が凄いやりやすいGUIだったので導入してます。 特に本業というか業務ではチームのため引き継ぎやスキルなしの方を考えないといけなかったので。。。

結局Fluentdはお仕事では使わなかったですが、とりあえずこうやって纏めれるだけ知識はついたので満足です。