可観測性(Observability)入門|ログ・メトリクス・トレースをOSSで実装【2026年版】
オープンソースラボ編集部 ・ 2026年6月13日
システムが壊れたとき「なぜ壊れたか」をすぐ特定できますか?これを実現するのが**可観測性(Observability)**です。本記事でOSSを使った可観測性の実装を解説します。
可観測性とは
可観測性とは、システムの外部出力からその内部状態を推定できる能力のことです。3本柱:
| 柱 | 定義 | 例 |
|---|---|---|
| メトリクス | 時系列の数値データ | CPU使用率、リクエスト数/秒、エラー率 |
| ログ | 時刻付きのテキストイベント | アプリのエラーログ、アクセスログ |
| トレース | リクエストの処理経路 | APIがDBとキャッシュをどの順で叩いたか |
OSSで構築するObservabilityスタック
推奨スタック(2026年)
[アプリ] → OpenTelemetry SDK → [OTel Collector]
↓
Prometheus(メトリクス)
Loki(ログ)
Tempo(トレース)
↓
Grafana(統合ダッシュボード)
OpenTelemetryで計装する
OpenTelemetry(公式サイト↗)はメトリクス・ログ・トレースを統一するCNCFの標準です。OpenTelemetryのGitHubリポジトリ↗で仕様を確認できます。
from opentelemetry import trace
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.trace.export import BatchSpanProcessor
from opentelemetry.exporter.otlp.proto.grpc.trace_exporter import OTLPSpanExporter
provider = TracerProvider()
provider.add_span_processor(
BatchSpanProcessor(OTLPSpanExporter(endpoint="http://otel-collector:4317"))
)
trace.set_tracer_provider(provider)
tracer = trace.get_tracer(__name__)
with tracer.start_as_current_span("process-order") as span:
span.set_attribute("order.id", order_id)
# ビジネスロジック
Docker Composeで最速セットアップ
services:
otel-collector:
image: otel/opentelemetry-collector-contrib:latest
volumes:
- ./otel-collector-config.yaml:/etc/otel/config.yaml
prometheus:
image: prom/prometheus:latest
ports: ["9090:9090"]
loki:
image: grafana/loki:latest
ports: ["3100:3100"]
grafana:
image: grafana/grafana:latest
ports: ["3000:3000"]
Prometheus・Grafanaの詳細はツールページを参照。DevOps関連OSSはDevOpsカテゴリから。
まとめ
可観測性はシステムの「見える化」です。OpenTelemetry + Prometheus + Grafana + Lokiの4点セットが2026年のOSSスタンダード。まずメトリクスから始め、ログ・トレースを段階的に追加しましょう。
よくある質問(FAQ)
Q. DatadogやNew Relicと比べて何が足りませんか?
AIによる異常検知・自動根本原因分析はDatadog/New Relicが優れます。OSSスタックは構築・運用の手間がかかる分、コストとデータ主権で優位です。
Q. Kubernetesでも同じ構成が使えますか?
はい。Helm Chartでの導入が一般的で、kube-prometheus-stackが人気です。Kubernetes環境向けのメトリクス自動収集も対応しています。
Q. どこから始めるべきですか?
まずPrometheus + Grafanaでメトリクスのみから始めるのがおすすめ。動いてから順番にLoki(ログ)、Tempo(トレース)を追加してください。
関連リンク・公式情報
ここで紹介したツールの一次情報(公式サイト・ソースコード)と、オープンソースラボ内の関連ページをまとめました。導入検討の際にご活用ください。
公式サイト・ソースコード(外部リンク)
オープンソースラボの関連ページ(内部リンク)

