サービスカタログ & マップ

マップはスパンから自動的に描かれる

宣言すべきトポロジーはありません。Mapleは既に送信されているトレースから親子関係を読み取るため、新しいサービスは最初に呼び出された時点でマップに現れます。

画面

12のサービスを1つの表に

選択した期間について、サービスごとのレイテンシパーセンタイル、エラー率、スループットを表示します。p99でソートすれば、対応が必要な行が最上段に来ます。

The service catalog listing latency percentiles, error-rate trends and throughput per service
/services 12 services · env production
topology
derived from spans
nodes
service · db · cache · external
edges
parent → child
per.service
p50 · p95 · p99 · error% · req/s
colour
16 hues · service identity

動き

流れるトラフィック

各ノードはリクエスト率、エラー率、平均レイテンシを表示します。エッジ上の流れはそのエッジのトラフィックであり、装飾ではありません。

service map · last 60s LIVE
2.8k req/s edge req/s 12.4k err% 0.1% avg 8ms checkout-api req/s 4.2k err% 0.3% avg 24ms cart-svc req/s 8.1k err% 0.1% avg 18ms auth-svc req/s 4.2k err% 0.0% avg 6ms pricing req/s 2.8k err% 2.4% avg 142ms payments req/s 1.1k err% 0.5% avg 38ms redis DB calls/s 18.2k avg 2ms postgres DB calls/s 6.4k avg 14ms
8 services · 8 edges · 60s window pricing-svc · p99 +18% vs 1h ago

できること

近隣を読み解く

edges
エッジは実際の呼び出し
2つのノードを結ぶ線はすべて、実際に発生した親子スパンのペアであり、それぞれ固有のリクエスト率とエラー率を持ちます。マップ上に宣言されたものはありません。
db.system
データベースやキャッシュも
クライアントスパンもノードになるため、Postgres、Redis、各種サードパーティAPIが、自社サービスと同じレイテンシ列を持ってマップ上に並びます。
1-hop / 2-hop
1ホップ、2ホップ
ノードをフォーカスすると、マップはその通信相手だけに絞り込まれます。40サービスの構成が、いま問うている疑問に関係する6サービスになります。
service.name
アイデンティティで色分け
各サービスは16色のうち1つを持ち、マップ、ウォーターフォール、チャートのどこでもその色を保ちます。色が示すのはどのサービスかであり、健全性ではありません。
service.version
同じ軸上のデプロイ
サービス詳細ではリリースがレイテンシに対して印付けされるため、段差のある変化は、勘ではなく、それを持ち込んだバージョンと一致します。

次は

このデータを共有する画面

OTLPをMapleに向ける。

エンドポイントとキーが1つずつ。トレース、ログ、メトリクス、セッションが、最初のリクエストから同じトレースIDに集まります。