オブザーバビリティ入門|メトリクス・ログ・トレースの3本柱とOpenTelemetryの実践

現場実践|オブザーバビリティ入門
オブザーバビリティ入門|メトリクス・ログ・トレースの3本柱とOpenTelemetryの実践
「監視とオブザーバビリティって何が違うの?」「分散トレーシングを導入したい」——オブザーバビリティの3本柱(メトリクス・ログ・トレース)・OpenTelemetry・AWS X-Rayを使った分散トレーシングの実践を解説します。
💡 「監視」は既知の問題を検知するもの。「オブザーバビリティ」は未知の問題を調査できる状態にすること。マイクロサービスが増えるほどオブザーバビリティの整備が重要になります。
1. オブザーバビリティの3本柱
メトリクス(Metrics)
数値の時系列データ。CPU使用率・レイテンシー・エラー率・リクエスト数。CloudWatch・Prometheusで収集・可視化する。
ログ(Logs)
時刻付きのテキスト記録。エラーの詳細・リクエストの内容・処理の記録。CloudWatch Logs・Elasticsearch(OpenSearch)で管理する。
トレース(Traces)
リクエストがシステムを通過する道筋。マイクロサービス間の呼び出し関係を可視化する。AWS X-Ray・Jaeger・Zipkinで実現する。
2. OpenTelemetry(OTel)とは
OpenTelemetryはCNCFが管理するオブザーバビリティのオープンスタンダードです。アプリケーションにOTelのSDKを組み込むことでメトリクス・ログ・トレースを統一的に収集できます。ベンダーロックインなしにDatadog・Jaeger・CloudWatch等のバックエンドに送信できるのが最大の特徴です。
3. AWS X-Rayによる分散トレーシング
import boto3
from aws_xray_sdk.core import xray_recorder
from aws_xray_sdk.core import patch_all
# boto3のSDKコールを自動でトレース
patch_all()
@xray_recorder.capture("process_order")
def process_order(order_id):
# このセグメント内の処理がX-Rayでトレースされる
with xray_recorder.in_subsegment("validate_inventory") as sub:
sub.put_annotation("order_id", order_id)
# 在庫確認処理...
pass4. RED メソッドとUSEメソッド
- REDメソッド(サービス向け):Rate(リクエスト数)・Errors(エラー率)・Duration(レイテンシー)の3つを監視するGoogleが推奨する指標
- USEメソッド(インフラ向け):Utilization(使用率)・Saturation(飽和度)・Errors(エラー数)の3つでインフラの健全性を監視する指標
📌 この記事のポイント
- オブザーバビリティはメトリクス(数値)・ログ(テキスト)・トレース(処理の道筋)の3本柱で構成される
- OpenTelemetryはベンダーロックインなしにメトリクス/ログ/トレースを統一収集できるOSSスタンダード
- REDメソッド(Rate/Errors/Duration)でサービス・USEメソッド(Utilization/Saturation/Errors)でインフラを監視する
キャリアの疑問、一緒に解決しませんか?
Route Bloomでは、インフラ系ITエンジニアを目指す方への個別サポートを行っています。2026年7月からフリーランス講師として本格始動予定です。
ABOUT ME




