Upgrade to Pro — share decks privately, control downloads, hide ads and more …

OpenTelemetry実践 はじめの一歩

Avatar for taxin taxin
March 25, 2024

OpenTelemetry実践 はじめの一歩

Avatar for taxin

taxin

March 25, 2024
Tweet

More Decks by taxin

Other Decks in Technology

Transcript

  1. OpenTelemetry のコンセプト • make a system observable ◦ システムの内部状態を理解・把握する能力 =

    Observability ◦ 󰢄「動いている / 動いていない」 ◦ 󰢐「何がどのように動いてるのか」 テレメトリを活用しObservabilityを高める 10
  2. OpenTelemetry のコンセプト • “Unknown”-unknownsへの対応 ◦ システムの内部状態を表現するテレメトリデータを 生成すること= 計装 (Instrumentation) ◦

    「どう動いている」がわかると未知の事象に対する 解像度があがる テレメトリを計装し内部状態を表現する 11
  3. 概要 • MackerelではOTel対応を進めています ◦ Mackerel = テレメトリ (Metric) の送信先の一つ •

    社内検証(dogfooding)の一環でブックマーク チームのシステムにOTelを導入する ◦ ブックマークチームのSREと共同で実施 17
  4. OpenTelemetry 導入の進め方 • 小さく実装のサイクルを回す ◦ 監視 ≠ Observability ▪ 「既存のアラート設定をただ移行する」では不十分

    ◦ 最小構成でOTelの登場人物や全体像を把握する ▪ 初手でテレメトリ送信のための仕組みを整備する ▪ その上で、計装やテレメトリ間の連携に 19
  5. OpenTelemetry 導入の進め方 • 実際の進め方 ◦ 1. 事前準備 ▪ テレメトリの取得対象であるシステムの確認 ▪

    テレメトリの取得方法を決める ▪ OpenTelemetry Collector / maprobeのデプロイ (ECS sidecar / stand-alone) ◦ 2. テレメトリデータ (Metric) の確認 ◦ 3. アラート・ダッシュボードの作成 20
  6. 23

  7. 導入にあたっての考慮事項 • とにかく小さく始める ◦ 小さく始めるための方法を調べる ▪ OpenTelemetry Collector (w/ ECS

    sidecar) ▪ 自動計装 (Auto Instrumentation) ◦ 徐々にテレメトリでカバーする範囲を増やす ▪ Collectorで取得するMetricを増やす → receiverを調べる 25
  8. 導入後の変化 • 原因調査が低コストで解像度高くできる ◦ ラベルを利用した絞り込み、集計ができる ▪ e.g.) request path, zone

    etc… ◦ 「どのリクエストがどう遅いか」のような粒度で見れる ▪ ALBのログをAthenaでクエリ叩かなくても良い ◦ 逆にラベルの数が多く、有用なラベルを見つけて絞る際 には苦労した 29
  9. 実践できていないこと • Traceなど他のテレメトリも計装する ◦ “connect metrics to other signals” •

    OTel Collectorも自前でビルドしたい ◦ ref: OpenTelemetry Collector Antipatterns • OTel Collector自体の監視も考える必要がある 30