Jaegerは、マイクロサービス間のリクエストを監視・トラブルシューティングするための、CNCF卒業済み分散トレーシングプラットフォームです。
- スター
- 17,473
- フォーク
- 3,093
- 未解決の Issue
- 176
- 最終コミット
- 3 か月前
これは何?
Zipkinは、計装済みアプリケーションから時間データを収集し、トレースIDでトレースを参照したり、サービス名、オペレーション、タグ、所要時間で検索したりできます。UIでは各トレース内で時間が費やされた箇所や、オペレーションの失敗状況を確認できるほか、アプリケーション間を流れたトレース対象リクエストの数を依存関係図で表示します。
アプリケーションはHTTPまたはKafka経由でspanを送信でき、RabbitMQ、gRPC、Apache ActiveMQ、Apache Pulsarなどのトランスポートにも対応しています。トレースデータはテスト用にメモリへ保存することも、Apache Cassandra、Elasticsearch、OpenSearchに永続保存することもでき、レガシーなMySQLも選択できます。
このプロジェクトには、Zipkin v1およびv2のJSON codecとストレージコンポーネントAPIを備えたコアJavaライブラリも含まれています。サーバーは実行可能jar、Docker image、Homebrew formula、Helm chartとして提供されます。メッセージングトランスポートを含まない、軽量なデプロイ向けのslim buildも利用できます。
主な機能
- 01サービス、オペレーション、タグ、所要時間でトレースを検索したり、トレースIDを指定して直接表示したりできます。
- 02エラーパスも含め、アプリケーション間のリクエストの流れを依存関係グラフで表示します。
- 03spanの送信にHTTP、Kafka、RabbitMQ、gRPC、ActiveMQ、Apache Pulsarを利用できます。
- 04インメモリ、Cassandra、Elasticsearch、OpenSearchに対応した、差し替え可能なストレージ。
- 05Zipkin v1およびv2のJSON codecを備えたコアJavaライブラリ。
ユースケース
- マイクロサービスの連鎖のうち、どのサービスが高レイテンシーの原因かを調査する。
- ログに記録されたトレースIDを使って、失敗したリクエストを見つけ、サービス間を追跡する。
- 開発やテストのために、データベースを使わずローカルでZipkinサーバーを実行する。
- サービスの依存関係を可視化し、非推奨サービスへの呼び出しを見つける。
クイックスタート
- 1
DockerでZipkinを起動する
docker run -d -p 9411:9411 openzipkin/zipkin - 2
ブラウザーで http://localhost:9411/zipkin にアクセスしてZipkin UIを開く
使う前に知っておきたいこと
- デフォルトのインメモリストレージは永続化されず、実際のワークロードには適していません。
- トレースデータを送信する前に、アプリケーションにトレーサーまたは計装ライブラリを導入する必要があります。
- ZipkinサーバーにはJRE 17以降が必要です。
収録されている特集
トピック
よくある質問
- zipkin とは?
- Zipkinは、サービスアーキテクチャ全体のレイテンシー調査に役立つ、時間データを収集・検索する分散トレーシングシステムです。 Zipkinは、計装済みアプリケーションから時間データを収集し、トレースIDでトレースを参照したり、サービス名、オペレーション、タグ、所要時間で検索したりできます。UIでは各トレース内で時間が費やされた箇所や、オペレーションの失敗状況を確認できるほか、アプリケーション間を流れたトレース対象リクエストの数を依存関係図で表示します。
- zipkin は無料で使えますか?ライセンスは?
- zipkin は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- zipkin は今もメンテナンスされていますか?
- 半年以内に更新あり。zipkin の最終コミットは 2026年8月6日 です。
- zipkin は何に使えますか?
- マイクロサービスの連鎖のうち、どのサービスが高レイテンシーの原因かを調査する。 ログに記録されたトレースIDを使って、失敗したリクエストを見つけ、サービス間を追跡する。 開発やテストのために、データベースを使わずローカルでZipkinサーバーを実行する。 サービスの依存関係を可視化し、非推奨サービスへの呼び出しを見つける。
- zipkin のインストール方法は?
- DockerでZipkinを起動する: docker run -d -p 9411:9411 openzipkin/zipkin ブラウザーで http://localhost:9411/zipkin にアクセスしてZipkin UIを開く
- zipkin はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/openzipkin/zipkin
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Goアプリケーションを計装し、トランザクション、エラー、ランタイムメトリクスをNew Relicに送信するGo SDK。
Goアプリケーションにトレース、メトリクス、ログを導入するためのAPIとSDKを提供する、OpenTelemetryのGo実装。
分散型・クラウドネイティブなマイクロサービスアーキテクチャの監視、トレース、診断を行うAPMシステム。
ログ、メトリクス、トレース、アラート、ダッシュボードを一元管理できる、OpenTelemetryネイティブのオープンソース可観測性プラットフォーム。
Rust製のセルフホスト可能なオブザーバビリティプラットフォーム。ログ、メトリクス、トレース、RUM、LLM監視に対応し、DatadogやSplunkの代替として位置付けられています。