やりたいこと
nginxのアクセスログをKibanaで見る
filebeatやlogstashの実験のためlocalにDockerで環境を作ってみたかった
やったこと
Dockerを4つ立ち上げた
- Elasticsearch
- logstash
- Kibana
- nginx with filebeat
nginxが動作しているサーバにfilebeatもインストール。
アクセスログをlogstash経由でElasticsearchに送って、Kibanaで可視化。
動かし方
$ git clone git@github.com:tky/elk1.git
$ cd elk1
$ docker-compose up
docker-compose up
で-d
つけない方がログが見えてよい。
console が落ち着いたらhttp://127.0.0.1
に何回かアクセスしてみると
ログが転送されているのがわかる。
Kibana設定
http://localhost:5601 からKibanaにアクセス。
- 左メニューの一番下、Management(ギア?のアイコン)を選択。
- Kibana Index Patternsクリック後Create index patternという青いボタンをクリック
- Step1 index patternのテキストボックスに
logstash-*
入れてNext step - Step2 Time Filter field nameのセレクトから@timestampを選択してCreate index patternをクリック
- 左メニューのDiscover(コンパス?のアイコン)をクリックするとグラフが表示される