Skip to content

agtail と OpenTelemetry の違い

最近のコーディングエージェントは OpenTelemetry 対応が進んでいます(Claude Code・Codex・ Gemini CLI はいずれも内蔵〔metrics/traces/logs〕。他はまちまち)。テレメトリが既にあるなら、 なぜローカルのトランスクリプトをわざわざ読むのか? — OTel と agtail は 答える問いが違う からです。

別々の仕事

  • OpenTelemetry → Datadog / Grafana = 観測(observation)。 フリート全体の集計 メトリクスと構造化イベント: コスト・トークン・レイテンシ・エラー/ツール失敗率・ 採用状況・傾向・アラート。「誰が・どれだけ・いくらで・どんな品質で使い、傾向はどう 動いているか」を見るのに最適。
  • agtail = フォレンジック(forensics)。 個々のセッションの全内容 — 各発話、 モデルの thinking、ツール呼び出しの入力/結果/差分、hooks、subagent — を、ディスク上に 既にあるファイルから、読み取り専用で検索・再構成する。

OpenTelemetry の方が得意なこと

  • フリートのダッシュボード・傾向・アラート。
  • 局所化(localize): コスト/エラーのスパイクから、ユーザー / モデル / セッション、 さらには高コストのターンまでドリルダウン(session.id と per‑request の cost イベント)。

agtail はメトリクス用ツールではありません — それが目的なら OTel を使ってください。

agtail が正解になるところ

「どのプロンプトがコストを膨らませたか」のようなドリルダウンでも、OTel は セッション/ターンまでは辿れます。しかし なぜ 膨らんだか(実際のツール出力、巨大な Read、ループ、トークンを肥大させた累積コンテキスト)を見るには全トランスクリプトが要る。 そして実運用では:

  • 中身は普通 OTel に無い。 プロンプト/ツール内容のログは既定で OFF(機密・コスト・ 持ち出し)なので、本文は送られないか truncate/サンプルされることが多い。
  • 後追いできる。 agtail は既に走ったセッションを読む — 計装を有効にする前の分も含めて。 OTel はそれ以降に捕捉した分しか持たない。
  • 設定不要・ツール横断。 主要 CLI は今どれも OTel 対応(Claude Code / Codex / Gemini CLI)だが、事前に Collector とバックエンドを用意して有効化する必要があり、 個人利用ではまずやらない。agtail は設定ゼロで任意ツールのローカル transcript を読める — OTel を吐かないもの(独自スクリプト・一部 IDE 統合)も、そして計装する前に走った 全セッションも。
  • ローカル & プライベート。 何も外に出ない — バックエンドも保持コストも不要。OTel は 中身をバックエンドに送る。
  • 忠実 & 完全。 agtail は生ファイルを読む: 全出力・差分・thinking・subagent スレッド、 truncate なし。
  • セットアップ不要。 事前の計装・Collector・Exporter 設定が要らない。

使い分けの目安

  • チーム横断のメトリクス・ダッシュボード・アラートが欲しい → OpenTelemetry + Datadog / Grafana。
  • 個々のセッションが実際に何をしたかを読み・検索・再構成したい(完全・後追い・ ツール横断・ローカル完結)→ agtail

両者は補完的です: OTel で異常や傾向を掴み、agtail で該当セッションを開いて実際に何が 起きたかを見る。