ロガーの基盤の調査
調査手順
参考になりそうな資料・サイトを探す
↓
各手順のメリット、デメリットを洗い出す
↓
一旦相談数する
↓
(多分)工数の洗い出し
参考資料・サイト
fluentd + s3
[FluentdでRailsのログをS3に保存する | yosuke.saito](https://saitoxu.io/2017/10/16/rails-fluentd.html) |
[Rails3+devise,nginx,fluent,S3構成でのアクセスログ収集と蓄積 | takemikami’s note](https://takemikami.com/archives/1314/) |
fluentd + cloudwatch
Railsのログ集約とCloudWatch Logsによる分析 - Qiita
fluentd + treasure data
前業務で行なっていた
sumo logic
Ruby on Rails ログの収集 - Sumo Logic Japanese
Datadog
fluentd + kibana
kibana4によるRailsアプリの可視化 EC2 Amazon Linux - Qiita
Filebeat + kibana
[Elasticsearch、Logstash 、Kibana、によるログの可視化 ~価値のある情報を導き出す方法のご紹介 ~ | キャスレーコンサルティング株式会社](https://www.casleyconsulting.co.jp/blog/engineer/253/) |
Logstash + kafka
基盤の要素
- ログ収集
- ログ集積
- ログ解析
ログ収集
ツール名 | 集積制限 | 参考URL | 備考 | |||
---|---|---|---|---|---|---|
1 | fluentd | プラグインに依存だがほぼなし | [FluentdでRailsのログをS3に保存する | yosuke.saito](https://saitoxu.io/2017/10/16/rails-fluentd.html) Railsのログ集約とCloudWatch Logsによる分析 - Qiita | td-agent | |
2 | Sumo Logic | * Sumo Logic | パート 1: コレクタをインストールする - Sumo Logic Japanese | ログ集積は必然とSumo Logicを使用 情報量が少ない | ||
3 | Filebeat | Elasticsearch / Logstash / Kafka / Redis / Elastic Cloud https://atsuizo.hatenadiary.jp/entry/2017/08/04/090000 [Configure the output | Filebeat Reference [master] | Elastic](https://www.elastic.co/guide/en/beats/filebeat/master/configuring-output.html) | ログが大量だとLogstashと組み合わせる Elastic社が関与 | |
4 | Apache Flume | HDFS / S3 | ログ収集フレームワークの新バージョン「FlumeNG」 | 新(NG)、旧(OG)が存在する | ||
5 | Zabbix | * Zabbix | ||||
6 | Logstash | Filebeat類似 | [Logstash | データの一元化、変換、保管 | Elastic](https://www.elastic.co/jp/products/logstash) | Filebeatの結果を集約するものらしい |
ログ集積
サービス名 | fluentd対応 | ログ解析 | How Read? | キーワード検索 | 要ホスト | SaaS | OSS | 備考 | ||
---|---|---|---|---|---|---|---|---|---|---|
1 | Elasticsearch | ○ | ○ | GUI | ○ | ○ | ○ | ○ | Kibanaと組み合わせる | |
2 | MongoDB | ○ | - | SQLクライアント | ○ | ○ | - | ○ | ||
3 | Datadog | ○ | ○ | GUI | - | - | ○ | - | 今ホットらしい [FluentdとDatadogの連携 (補足編) | Datadog](https://www.datadoghq.com/ja/blog/fluentd%E3%81%A8datadog%E3%81%AE%E9%80%A3%E6%90%BA-%E8%A3%9C%E8%B6%B3/) |
4 | InfluxDB | ○ | ○ | GUI | - | ○ | - | ○ | ログ解析機能あり | |
5 | Amazon Elasticsearch Service | ○ | ○ | GUI | ○ | - | ○ | - | ElasticsearchをAWSがマネージドしている | |
6 | AWS CloudSearch | ○ | ○ | GUI | - | ○ | - | Amazon CloudSearch にドキュメントを取りこむ Lambda 関数 s32cs のご紹介 - 酒日記 はてな支店 | ||
7 | AWS S3 | ○ | - | Athena(SQL) | ○ | - | ○ | - | FluentdでS3に送ったログをAmazon Athenaで集計する。2018-03-26 - Qiita | |
8 | AWS Redshift | ○ | - | SQLクライアント | ○ | - | ○ | - | ||
9 | GCP BigQuery | ○ | - | SQLクライアント(GUI) | ○ | - | ○ | - | Google Cloud Platform | |
10 | Sumo Logic | ○ | ○ | GUI | ○ | - | ○ | - | 情報量が少ない [New Heroku Add-on for Sumo Logic Goes Beta | Sumo Logic](https://www.sumologic.jp/blog/heroku-add-on-for-sumo-logic/) |
11 | Zabbix | ○ | ○ | GUI | - | ○ | - | ○ | ログを検索するような仕組みではなく、特定の条件に合致した値を集計する仕組みっぽいZabbixとFluentdを使ってCloudWatchの情報を長期保存する - Qiita | |
12 | Graylog | ○ | ○ | GUI | ○ | ○ | - | ○ | 複数のミドルウェアを組み合わせる為、構成が複雑になりそう ElasticSearchを使用している [fluentdからGraylogにGELF形式でログを転送する | 俺的備忘録 〜なんかいろいろ〜](https://orebibou.com/2017/02/fluentd%E3%81%8B%E3%82%89graylog%E3%81%ABgelf%E5%BD%A2%E5%BC%8F%E3%81%A7%E3%83%AD%E3%82%B0%E3%82%92%E8%BB%A2%E9%80%81%E3%81%99%E3%82%8B/) |
13 | Treasure Data | ○ | - | SQLクライアント(GUI) | ○ | - | ○ | - | KPIなどでRedushと組み合わせていた。 |
ログ解析
ログ集積にまとめた
組み合わせ
ホストマネージドをしない、キーワード検索ができる観点で絞りました。
収集 | 集積 | 解析方法 | 可視化 | 所感 | |
---|---|---|---|---|---|
1 | fluentd | Amazon Elasticsearch Service | GUI | ○ | アクセスのKPIを行うなどの際に流用が効きそう |
2 | fluentd | AWS S3 | Athena | - | ログの解析だけをする最低限 |
3 | fluentd | Treasure Data | クエリ | - | ログの解析だけをする最低限 別途、契約が必要になる |
4 | fluentd | AWS Redshift | クエリ | - | ログの解析だけをする最低限 |