実践 OpenTelemetry

オープンなオブザーバビリティ標準を組織に導入する

3,630円
Ebook Storeで電子版を購入:
価格3,630円
カートに入れる

内容

本書は、オブザーバビリティのコンセプトとともに、OpenTelemetryのアーキテクチャ、仕様、活用方法について解説する書籍です。SREやDevOpsの分野でマイクロサービスを実装・運用しているソフトウェア開発者、Kubernetesアプリケーションのトラブルに悩むインフラエンジニアなどが、OpenTelemetryを導入し、オブザーバビリティを実装する際の助けとなります。本書によってOpenTelemetryを本番環境で利用する際のアーキテクチャ、設定、またトラブルシュートの方法などについての知識が得られるでしょう。

関連書籍

目次

訳者まえがき
まえがき
はじめに

第Ⅰ部 オブザーバビリティの必要性とOpenTelemetry

1章 オブザーバビリティの必要性
    1.1 なぜオブザーバビリティが重要なのか
    1.2 コンテキストと相関関係
    1.3 まとめ

2章 OpenTelemetryを使ったオブザーバビリティの実現
    2.1 OpenTelemetryのミッション
    2.2 オープン標準の力
    2.3 ベンダーの付加価値の変化
    2.4 まとめ

第Ⅱ部 OpenTelemetryのコンポーネントとベストプラクティス

3章 OpenTelemetryの基本
    3.1 OpenTelemetry仕様
        3.1.1 シグナルとコンポーネント
        3.1.2 安定性と設計原則
        3.1.3 トレース
        3.1.4 メトリクス
        3.1.5 ログ
        3.1.6 バゲッジ
        3.1.7 コンテキスト伝搬
        3.1.8 計装ライブラリ
        3.1.9 リソース
        3.1.10 コレクター
        3.1.11 OTLPプロトコル
    3.2 セマンティック規約
        3.2.1 リソース規約
        3.2.2 トレース規約
        3.2.3 メトリクス規約
        3.2.4 ログ規約
        3.2.5 テレメトリーのスキーマ
    3.3 まとめ

4章 自動計装
    4.1 リソースSDK
    4.2 計装ライブラリ
        4.2.1 Javaエージェント
        4.2.2 Javaでのスタンドアローン計装
    4.3 まとめ

5章 コンテキスト、バゲッジ、プロパゲーター
    5.1 テレメトリーコンテキストとContext API
    5.2 Baggage API
        5.2.1 W3C Baggage仕様を使用した伝搬
    5.3 サービス間コンテキストとPropagators API
        5.3.1 プロパゲーターを設定する
    5.4 まとめ

6章 トレース
    6.1 分散トレースとは何か?
    6.2 Tracing API
        6.2.1 トレーサーとトレーサープロバイダー
        6.2.2 スパンの作成とコンテキストの相互作用
        6.2.3 既存のスパンにプロパティを追加する
        6.2.4 エラーと例外を表現する
        6.2.5 非同期タスクのトレース
    6.3 Tracing SDK
        6.3.1 スパンプロセッサーとエクスポーター
    6.4 トレースコンテキストの伝搬
        6.4.1 W3C TraceContext
    6.5 まとめ

7章 メトリクス
    7.1 測定、メトリクス、時系列
    7.2 Metrics API
        7.2.1 メーターとメータープロバイダー
        7.2.2 計装の登録
        7.2.3 計装型
    7.3 Metrics SDK
        7.3.1 集約
        7.3.2 ビュー
        7.3.3 イグザンプラー
        7.3.4 メトリクスリーダーとエクスポーター
    7.4 まとめ

8章 ログ
    8.1 オブザーバビリティのためのログが目指すところ
    8.2 Logging API
        8.2.1 Logs APIインターフェイス
        8.2.2 Events APIインターフェイス
    8.3 Logging SDK
        8.3.1 ログのプロセッサーとエクスポーター
    8.4 ログフレームワークとの統合
    8.5 まとめ

9章 プロトコルとコレクター
    9.1 プロトコル
        9.1.1 OTLP/gRPC
        9.1.2 OTLP/HTTP
        9.1.3 エクスポーターの設定
    9.2 コレクター
        9.2.1 デプロイ
        9.2.2 レシーバー
        9.2.3 プロセッサー
        9.2.4 エクスポーター
        9.2.5 エクステンション
        9.2.6 サービス
    9.3 まとめ

10章 サンプリングと一般的なデプロイモデル
    10.1 一般的なデプロイモデル
        10.1.1 コレクターなしモデル
        10.1.2 ノードエージェントモデル
        10.1.3 サイドカーエージェントモデル
        10.1.4 ゲートウェイモデル
    10.2 トレースサンプリング
        10.2.1 確率サンプリング
        10.2.2 テイルベースサンプリング
    10.3 まとめ

第Ⅲ部 OpenTelemetryを組織に展開する

11章 摩擦を最小限に抑えて導入を最大化する
    11.1 テレメトリー整備への投資
    11.2 OpenTelemetryを導入する
        11.2.1 未開拓の環境
        11.2.2 OpenTracingとの互換性
        11.2.3 OpenCensusとの互換性
        11.2.4 その他のテレメトリークライアント
    11.3 まとめ

12章 オブザーバビリティの導入
    12.1 デバッグワークフローの転換
    12.2 コンテキストを拡張する
    12.3 テレメトリーの価値を維持する
    12.4 まとめ

索引