概要
前回は In-Memory ストレージを使ったので再起動するとデータが消えてしました
今回はストレージに ElasticSearch を使ってデータの永続化を行ってみました
環境
- Zipkin 2.23
- ElasticSearch7.9.3
ネットワークの作成
docker create network test
このネットワークに Zipkin と ElasticSearch コンテナを属させます
ElasticSearch コンテナの起動
今回は zipkin が用意している ElasticSearch イメージを使って ElasticSearch コンテナを起動します
* docker run -d -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" --network test --name es docker.elastic.co/elasticsearch/elasticsearch:7.9.3
* curl 'localhost:9200/_cat/health'
green が返ってくることを確認しましょう
Zipkin コンテナの起動
STORAGE_TYPE=elasticsearch
にして起動します
* docker run -d -p 9411:9411 -e STORAGE_TYPE=elasticsearch -e ES_HOSTS=es:9200 --network test --name zipkin openzipkin/zipkin
動作確認用のアプリは前回の Sinatra アプリを使用しています
これでアプリを使って Zipkin にトレース情報を送信してみると以下のようにちゃんと ElasticSearch 側にインデックスが作成されているのが確認できると思います
また何回かアクセスしてみると docs.count が増えるのも確認できると思います
また http://localhost:9411/zipkin/
にアクセスして serviceName=zipkin-test
で検索してもちゃんとトレース情報が確認できると思います
最後に
Zipkin + ElasticSearch を試してみました
STORAGE_TYPE
を変更するだけで簡単に使うことができます
既存の ElasticSearch があるのであればそれをそのまま流用してもいいと思います
0 件のコメント:
コメントを投稿