ロギングと可観測性をClaudeと設計する
運用中のシステムで「何が起きているか分からない」という状況は、エンジニアにとって最もストレスフルな場面のひとつです。構造化ログ・トレーシング・メトリクスを適切に設計すれば、その不安を大幅に減らせます。Claude Codeはこの設計フェーズから強力なパートナーになります。
Claudeに可観測性の設計を相談する
Section titled “Claudeに可観測性の設計を相談する”まずはプロジェクトの構成をClaudeに伝えて、どこに何を計装すべきかを相談しましょう。Claude Codeのターミナルでこのように入力します。
このNode.js + Expressアプリに可観測性を導入したいです。OpenTelemetryを使って、HTTPリクエストのトレーシングと構造化ログを設定する方法を提案してください。現在の構成: src/app.ts, src/routes/, src/services/Claudeはプロジェクト構造を把握したうえで、計装ポイントの優先順位や具体的な実装方針を提示してくれます。「どこから手をつければいいか分からない」という段階から一緒に考えられるのが大きなメリットです。
構造化ログのコードをClaudeに生成させる
Section titled “構造化ログのコードをClaudeに生成させる”設計方針が固まったら、実際のコードを生成させましょう。次のように依頼すると、すぐに使えるコードが出力されます。
pinoを使った構造化ログのラッパーモジュールを作成してください。以下の要件を満たしてください:- trace_id, span_idを自動付与する- 環境(development/production)でログレベルを切り替える- エラーオブジェクトをJSON化するClaudeが生成するコードはこのような形になります。
import pino from "pino";import { trace } from "@opentelemetry/api";
const logger = pino({ level: process.env.NODE_ENV === "production" ? "info" : "debug", formatters: { log(object) { const span = trace.getActiveSpan(); const spanContext = span?.spanContext(); return { ...object, trace_id: spanContext?.traceId ?? "", span_id: spanContext?.spanId ?? "", }; }, },});
export default logger;生成後に「このコードにメトリクス収集も追加して」と追加指示を出せば、反復的に改善できます。
アラートルールの設計もClaudeと行う
Section titled “アラートルールの設計もClaudeと行う”ログ・トレース・メトリクスを導入したら、次はアラートの設計です。Claudeに既存のメトリクス定義を貼り付けて相談できます。
以下のPrometheusメトリクスをもとに、SLOベースのアラートルールをYAML形式で作成してください。エラーレート5%超・p99レイテンシ2秒超を閾値とします。Claude Codeを活用すれば、可観測性の設計から実装・運用設定まで一気通貫で進められます。まず小さな範囲から試してみましょう。