Google Cloud ハンズオン教科書|2026-08 版
第 15 章 試験ガイド 6.1 試験ガイド 4.3 試験ガイド 6.3

オブザーバビリティと SRE

SLO とエラーバジェットで「信頼性」を数値にする

この章で学ぶこと

試験ガイド対応: セクション 6.1(モニタリング / ロギング / プロファイリング / アラートのソリューション)、4.3(本番環境の信頼性を確認する手法 — カオスエンジニアリング・ペネトレーションテスト)、6.3(デプロイ済みソリューションのサポート)

Google Cloud Observability の全体像

ここまでの章で「作る」「守る」を扱ってきました。本章のテーマは「動き続けていることを知る」です。オブザーバビリティ(可観測性)とは、システムが外に出すテレメトリー(指標・ログ・トレース)から内部状態を推測できる性質のこと。Google Cloud ではこれを Google Cloud Observability というスイート(旧称 Stackdriver)が一手に引き受けます。柱は 3 つのテレメトリーに対応する 3 プロダクト — 数値の時系列を扱う Cloud Monitoring、イベントの記録を扱う Cloud Logging、リクエストの経路と所要時間を扱う Cloud Trace — と、それを補う Cloud Profiler(CPU・メモリのホットスポット分析)、Error Reporting(例外の自動グルーピング)です。

監視対象 Cloud Run / GKE VM + Ops Agent アプリケーション Cloud Monitoring 指標(時系列) Cloud Logging ログエントリ Cloud Trace トレース / スパン アラート / SLO / ダッシュボード しきい値評価と可視化 ログエクスプローラ / シンク 検索・保存・ルーティング Trace エクスプローラ レイテンシ分析 指標 ログ スパン 評価 検索 分析
図 15-1 テレメトリーの 3 本柱と受け皿。左のワークロードは何もしなくても Google Cloud サービスの指標・ログを自動で出す。VM の OS 内部の指標・ログは Ops Agent、アプリ独自の値は API / OpenTelemetry 経由で追加する。

役割分担を一言で言うと「気づくのは Monitoring、調べるのは Logging と Trace、直すヒントは Profiler と Error Reporting」です。試験でもこの使い分けが頻出します。

プロダクト扱うものこういう問いに答える
Cloud Monitoring指標(数値の時系列)、ダッシュボード、アラート、アップタイムチェック「CPU 使用率は?」「エラー率が閾値を超えたら通知して」
Cloud Loggingログエントリの収集・検索・ルーティング・保持「あのリクエストで何が起きた?」「監査ログを 5 年残したい」
Cloud Trace分散トレース(リクエストがどのサービスで何 ms 使ったか)「マイクロサービスのどこが遅い?」
Cloud Profiler本番コードの CPU・ヒープの継続プロファイリング(オーバーヘッド 5% 未満)「このサービスのどの関数が CPU を食っている?」
Error Reportingログ中の例外・スタックトレースの自動グルーピングと新規エラー通知「今どんな例外が何件、いつから出ている?」

Cloud Trace は OpenTelemetry による計装が推奨で、Cloud Run は送受信 HTTP リクエストのレイテンシデータを自動送信します(第 7 章)。Cloud Profiler は Go / Java / Node.js / Python に対応し、統計的サンプリングでオーバーヘッドを 5% 未満(複数レプリカの平均では 0.5% 未満が一般的)に抑えるため本番常時稼働が前提です。Error Reporting は Cloud Logging に書かれた例外ログ、または専用 API から入力を受け取ります。

試験の視点: 「どのツールで調べるか」問題はキーワードで即断できます。サービス間のレイテンシのボトルネック → Cloud Trace。特定の関数・コード行の CPU / メモリ消費 → Cloud Profiler。本番の例外を集約して新規発生に気づきたい → Error Reporting。特定リクエストの詳細な記録を検索 → Cloud Logging。しきい値の監視と通知 → Cloud Monitoring のアラート。逆方向(Profiler でレイテンシの分布を見る、など)は誤答の選択肢です。

Cloud Monitoring — 指標・アラート・アップタイムチェック

指標とメトリクススコープ

Cloud Monitoring が扱う指標は出どころで 5 系統あります。① Google Cloud サービスが自動で出す指標、② Compute Engine VM に入れた Ops Agent が集める OS・アプリ指標、③ ユーザー定義(カスタム)指標、④ 外部・サードパーティ指標、⑤ Google Cloud Managed Service for Prometheus 経由の Prometheus 指標です。時系列データは「メトリクスタイプ × 監視対象リソース × ラベル」で識別され、クエリ言語は PromQL・MQL・Monitoring フィルタの 3 つが使えます。可視化は Metrics Explorer とダッシュボード(自動生成 + カスタム)が担います。

複数プロジェクトの一元監視はメトリクススコープで実現します。スコーピングプロジェクトに他の Google Cloud プロジェクト(および AWS アカウント)を追加すると、単一画面で横断的に指標を見られます。プロジェクトを環境ごとに分ける設計(第 2 章)と組み合わせて、監視専用プロジェクトに集約するのが定石です。

アラートポリシー — 条件・インシデント・通知チャネル

アラートは「条件(何をもって異常とするか)+ 通知チャネル(誰に知らせるか)+ ドキュメント(通知に添える対応手順)」の 3 点セットで定義します。条件を満たすとインシデントという記録が作られ、通知が飛び、指標ベースの条件では条件解消で自動クローズされます(クローズ時も通知可能)。通知チャネルは Email・Cloud Mobile App・PagerDuty・Slack・Pub/Sub・Webhook など多数に対応します。

正常 条件は不成立 インシデント作成 オープン状態を記録 自動クローズ 条件の解消後 通知チャネル Email / Slack / Pub/Sub 条件成立 条件解消 通知 クローズ通知 監視を継続
図 15-2 アラートの状態遷移。インシデントは「いつ・何の条件が・どのリソースで」を保持するトラブルシューティングの起点になる。特定の時間帯だけ監視をオフにする設定は無く、メンテナンス時はスヌーズで通知を止める。

指標ベースの条件タイプは 4 つ + ログベースがあります。

条件タイプ何を検知するか典型例
しきい値(metric-threshold)値がしきい値を N 分間超え続けたCPU 使用率が 80% を 5 分継続
データ欠落(metric-absence)データが最大 23.5 時間の指定期間届かないハートビート指標が 10 分間途絶
予測(forecast)今後 1 時間〜2.5 日以内にしきい値を超えると予測されるディスクが 2 日以内に満杯になる見込み
PromQL複数指標の比率など複雑な式エラー応答数 ÷ 全応答数 が 1% 超
ログベース条件に一致するログエントリの出現特定の例外メッセージが出た

アップタイムチェック — 外形監視

アップタイムチェックは、世界各地のチェッカーから HTTP / HTTPS / TCP でエンドポイントを叩き続ける外形監視です。パブリックチェックは公開 URL や LB を、プライベートチェックは VPC 内の VM や内部ロードバランサの内部 IP を対象にできます。チェックは最低 3 つのチェッカー(3 ロケーション以上)から実行され、推奨のアラート条件は「2 リージョン以上で 1 分以上失敗したら通知」です。料金はチェックの実行回数ベースで、1 回のチェックはリージョンごとに 1 実行と数えます(2026-08 時点: プロジェクトあたり月 100 万実行まで無料、超過 $0.30/1,000 実行)。

ハンズオン 15-1|アップタイムチェックとアラートポリシーで外形監視を作る

公開サイトへのアップタイムチェックを gcloud で作り、コンソールからアラートポリシーと通知チャネルを紐づけます。所要 15 分。費用: 無料枠内(5 分間隔 × 3 リージョンで月 2.6 万実行程度。無料枠は月 100 万実行)。

  1. Cloud Shell(ローカル gcloud でも可)でアップタイムチェックを作成します。対象はドキュメントの例と同じ example.com を使います。PROJECT_ID は自分のプロジェクト ID(gcloud config get-value project で確認)に置き換えてください。
gcloud monitoring uptime create pca-uptime-check \
  --resource-type=uptime-url \
  --resource-labels=host=example.com,project_id=PROJECT_ID \
  --protocol=https \
  --period=5 \
  --timeout=10
  1. 作成されたことを確認します。name 末尾の ID を後片付けで使うので控えておきます。
gcloud monitoring uptime list-configs
  1. コンソールで[Monitoring]→[アップタイムチェック]を開くと、各リージョンからのチェック結果が緑で並び始めます(反映まで数分待ちます)。
  2. チェックの詳細画面から[アラートポリシーを作成]を選ぶと、条件(アップタイムチェックの失敗)が事前入力されたポリシー作成画面が開きます。通知チャネルに自分のメールアドレスを追加して保存します。
  3. 動作確認として、チェック対象のホスト名を存在しないもの(例: no-such-host.example.com)に編集して数分待つと、インシデントが作成されてメールが届きます。

後片付け: アラートポリシーと通知チャネルはコンソールの[Monitoring]→[アラート]から削除し、アップタイムチェックは手順 2 で控えた ID で削除します。

gcloud monitoring uptime delete CHECK_ID
gcloud monitoring uptime list-configs   # 空になれば OK

Cloud Logging — ログの経路と保持を設計する

ログの種類とログエクスプローラ

Cloud Logging には、Google Cloud サービスが出すプラットフォームログ、GKE などのコンポーネントログ、Cloud Audit Logs や Access Transparency ログといったセキュリティログ(第 14 章)、アプリが Ops Agent・API・クライアントライブラリ経由で書くユーザー作成ログ、他クラウドやオンプレからのマルチクラウドログが集まります。調べるときの入口はログエクスプローラで、クエリ言語でフィルタして個々のエントリをトレースと突き合わせながら読めます。ログバケットを Log Analytics 対応にアップグレードすると SQL でログを集計・分析でき(BigQuery のリンクされたデータセットはバケットごとに 1 つ作成可能)、傾向分析に使えます。ただしアップグレードは取り消せません。

Log Router とシンク — すべてのログは経路が決まってから保存される

Cloud Logging API に届いたログエントリは、いったん Log Router を通り、シンクのフィルタ評価によって宛先が決まります。シンクは「包含フィルタ 1 つ + 除外フィルタ複数」を持ち、包含に一致し除外に一致しないエントリだけを宛先へ流します。各プロジェクトには最初から 2 つのシンクがあります。_Required シンクは管理アクティビティ監査ログなどを _Required バケット(保持 400 日)へ送り、変更も無効化もできません。_Default シンクは残りすべてを _Default バケット(既定 30 日、1〜3650 日に変更可)へ送り、こちらはフィルタ変更・無効化ができます。

ログエントリ アプリ / 監査ログ Log Router _Required シンク 監査ログのみ・変更不可 _Default シンク それ以外のすべて ユーザー定義シンク 包含 + 除外フィルタ _Required バケット 保持 400 日・変更不可 _Default バケット 既定 30 日(1〜3650 日) 外部宛先 BigQuery / Cloud Storage Pub/Sub / 別プロジェクト 書き込み 監査ログ その他 一致分のみ
図 15-3 Log Router のルーティング。シンクは並列に評価されるため、同じエントリが複数の宛先に届いてよい。除外フィルタで _Default シンクから外したログはバケットに保存されず、取り込み課金も発生しないが、ログエクスプローラでは見えなくなる。

ユーザー定義シンクの宛先は、ログバケット・BigQuery データセット・Cloud Storage バケット・Pub/Sub トピック(Splunk 等のサードパーティ連携用)・別プロジェクトの 5 種類です。たとえば監査ログを BigQuery で分析したいなら次のようにシンクを作ります(第 11 章)。

# 監査ログを BigQuery データセットへルーティングするシンクの例
gcloud logging sinks create audit-to-bq \
  bigquery.googleapis.com/projects/PROJECT_ID/datasets/audit_logs \
  --log-filter='logName:"cloudaudit.googleapis.com"'

組織・フォルダレベルでは集約シンクが作れます。配下の全プロジェクトのログを 1 か所(中央プロジェクトのログバケットなど)に集める仕組みで、全社の監査ログ保全の定番です。インターセプト型集約シンクにすると、一致したログは各プロジェクトの _Default シンクを通らなくなり、重複保存を防げます(_Required への保存は必ず行われます)。

ログベースの指標

「このエラーログが何件出たか」を Cloud Monitoring の指標に変換するのがログベースの指標です。一致エントリ数を数えるカウンタ型と、ログから抽出した数値をヒストグラムにする分布型(レイテンシ集計に定番)があり、システム定義(logging.googleapis.com/ 配下)とユーザー定義(logging.googleapis.com/user/ 配下)に分かれます。ユーザー定義の指標は作成後に届いたログだけを数えます。毎分時系列が更新されるので、そのままアラートポリシーの条件に使えます。

料金の勘所(2026-08 時点)

ハンズオン 15-2|ログを書いて調べて数える — ログエクスプローラとログベース指標

テストログを書き込み、検索し、ログベースの指標に変換する一連の流れを体験します。所要 15 分。費用: 無料枠内(書き込むのは数 KB。取り込み無料枠は月 50 GiB)。

  1. テキストと構造化(JSON)の 2 形式でログを書き込みます。
gcloud logging write pca-handson-log \
  "決済処理でタイムアウトが発生しました" --severity=ERROR

gcloud logging write pca-handson-log \
  '{"message": "checkout failed", "orderId": "A-1234"}' \
  --severity=ERROR --payload-type=json
  1. 書いたログを読み出します。コンソールの[ログエクスプローラ]でも同じクエリで検索し、JSON ペイロードのフィールドが構造化されて表示されることを確認しましょう。
gcloud logging read \
  'logName="projects/PROJECT_ID/logs/pca-handson-log"' --limit=5
  1. ERROR 以上のエントリ数を数えるユーザー定義のログベース指標(カウンタ型)を作ります。
gcloud logging metrics create pca-error-count \
  --description="ハンズオン用: ERROR 以上のログ件数" \
  --log-filter='logName="projects/PROJECT_ID/logs/pca-handson-log" AND severity>=ERROR'
  1. 手順 1 のコマンドをもう何回か実行してから、Metrics Explorer で logging/user/pca-error-count を選ぶと、件数がグラフに現れます(指標の作成前に書いたログは数えられない点に注意)。

後片付け:

gcloud logging metrics delete pca-error-count --quiet
gcloud logging logs delete \
  projects/PROJECT_ID/logs/pca-handson-log --quiet

SLI・SLO・エラーバジェット — 信頼性を数値で運用する

3 つの用語を区別する

SRE(Site Reliability Engineering)は「運用をソフトウェアエンジニアリングの問題として扱う」Google 発の方法論で、その中核が信頼性の数値化です。まず用語を厳密に区別します。

用語意味例
SLI(指標)サービスレベルの定量的な測定値成功応答の割合、レイテンシの 99 パーセンタイル
SLO(目標)SLI に対する目標値。内部的な約束「28 日間で成功率 99.9% 以上」
SLA(契約)SLO を含む顧客との契約。未達時に返金などの罰則を伴う「月間 99.5% を下回ったらクレジット返金」

SLI 選びの原則は「計測しやすいものではなく、ユーザーが気にすることを測る」。ユーザー向けサービスなら可用性・レイテンシ・スループット、ストレージなら耐久性が代表です。レイテンシは平均でなくパーセンタイルで見ます — 平均 50ms でも 5% のリクエストが 20 倍遅い、というテールは平均に隠れるからです。そして目標を 100% にしてはいけません。100% は達成不可能なうえ、リリースの凍結を正当化してイノベーションを止めます。ユーザーが 99.9% と 99.99% の差を体感できないなら、低いほうで十分です。外部に約束する SLA より内部 SLO を厳しく設定し、契約違反の前に検知して動ける余白を持たせます。

エラーバジェットとバーンレート

SLO を裏返すとエラーバジェットになります。計算式は「(1 − SLO 目標) × コンプライアンス期間内の対象イベント数」。SLO 99.9%・30 日間なら 0.1% 分の失敗(時間に換算すると 43.2 分の全停止相当)が「使ってよい予算」です。予算が残っているうちは新機能のリリースやカオス実験に使い、枯渇が近づいたら信頼性改善を優先する — リリース速度と信頼性のトレードオフを、感情論でなく数値で裁定するのがエラーバジェットの役割です。

予算の消費速度がバーンレートです。バーンレート 1 は「このエラー率が続くと、コンプライアンス期間の終わりでちょうど予算を使い切る」速度を意味します。SLO 違反「後」に知っても手遅れなので、アラートはバーンレートに張ります。推奨は 2 段構えで、fast burn(ルックバック 1 時間・バーンレート 10 倍以上 → 即時対応)と slow burn(ルックバック 24 時間・2 倍以上 → 営業時間内に対応)を併用します。

残りエラーバジェット(%) バーンレート 10(fast burn) バーンレート 1 (期間末でちょうど使い切る) バーンレート 0.5 0% に到達 = エラーバジェット枯渇 100% 0% 0 日 3 日 30 日
図 15-4 バーンレートの直感。傾きが消費速度で、バーンレート 10 が続けば 30 日の予算が 3 日で尽きる。だから「10 倍を 1 時間観測したら即通知」の fast burn アラートが要る。

Cloud Monitoring の SLO モニタリング

この理屈をマネージドで実装するのが Cloud Monitoring の SLO モニタリングです。Cloud Run サービス・GKE のワークロード / Service / Namespace・App Engine・Cloud Service Mesh・Istio on GKE のサービスはサービス候補として自動検出され、コード変更なしで SLO を張れます(該当しないものはカスタムサービスとして定義)。SLI は可用性・レイテンシ(またはカスタム指標)から選び、評価方法はリクエストベース(良いリクエスト ÷ 全リクエスト)かウィンドウベース(基準を満たした時間窓の割合)、コンプライアンス期間はローリング(直近 1〜30 日)かカレンダー(暦週・暦月でリセット)を選びます。SLO はサービスあたり最大 500 個、作成はコンソールのほか Cloud Monitoring API(services API)でも可能で、作った SLO にはバーンレートアラート(ルックバック期間は最大 24 時間)を紐づけられます。

トイルとポストモーテム — 文化の側

数値化とならぶ SRE の柱が 2 つあります。トイルの削減: トイルとは「手作業・反復的・自動化可能・戦術的・長期的価値がなく・サービス成長に比例して増える」運用作業のことで、SRE はトイルを業務時間の 50% 未満に抑え、残りをエンジニアリング(自動化・信頼性改善)に充てるのが原則です。ブレイムレス(非難しない)ポストモーテム: 障害後は個人を責めずにシステム側の原因を掘る文書を書き、レビューして共有します。書く基準(ユーザー影響が閾値超え、データ損失、オンコールの手動介入、監視で検知できず人が見つけた、など)をあらかじめ決めておくのが実務の型です。非難する文化では人が問題を隠すようになり、組織は同じ障害を繰り返します。

試験の視点: セクション 6.1 では「開発速度と信頼性のバランスを取る仕組みは?」→ エラーバジェット、「SLO 違反前に知りたい」→ バーンレートアラート、が定番のマッピングです。また「可用性 100% を目指すべき」「SLO は常に SLA と同じ値」はどちらも誤りの選択肢として登場します。数値の換算(99.9% ≒ 月 43 分、99.99% ≒ 月 4.3 分の停止許容)は暗算できるようにしておきましょう。
ハンズオン 15-3|Cloud Run サービスに SLO を定義してエラーバジェットを見る

サンプルコンテナを Cloud Run にデプロイし、可用性 SLO を定義してエラーバジェットの画面を確認します。所要 20 分。費用: 無料枠内(Cloud Run はリクエストが無ければインスタンス 0 までスケールし、少量のテストアクセスは無料枠に収まります)。

  1. サンプルイメージを東京リージョンへデプロイします(第 7 章の復習です)。
gcloud run deploy pca-slo-demo \
  --image=us-docker.pkg.dev/cloudrun/container/hello \
  --region=asia-northeast1 \
  --allow-unauthenticated
  1. SLI の材料になるトラフィックを流します。
SERVICE_URL=$(gcloud run services describe pca-slo-demo \
  --region=asia-northeast1 --format='value(status.url)')
for i in $(seq 1 30); do
  curl -s -o /dev/null -w "%{http_code}\n" "$SERVICE_URL"
done
  1. コンソールで[Monitoring]→[SLO]を開きます。サービス候補に pca-slo-demo(Cloud Run サービス)が自動検出されているので選択し、[Submit]でサービスとして登録します。
  2. [Create SLO]で次のとおり定義します: SLI = 可用性、評価方法 = リクエストベース、コンプライアンス期間 = ローリング 28 日、目標 = 99%。保存前に JSON プレビューで構造(goodTotalRatio など)を眺めておくと API での自動化に役立ちます。
  3. 作成後の SLO 画面で、現在の SLI 値・目標との差・残りエラーバジェットがグラフ表示されることを確認します。余裕があれば[Create alerting policy]から fast burn(ルックバック 60 分・しきい値 10)のバーンレートアラートも作ってみましょう。

後片付け: SLO とサービス定義・アラートはコンソールの SLO 画面から削除し、Cloud Run サービスを削除します。

gcloud run services delete pca-slo-demo \
  --region=asia-northeast1 --quiet

信頼性を「確認する」手法 — カオスエンジニアリングと DiRT

試験セクション 4.3 は「本番の信頼性を確認する手順」を問います。監視は「起きた異常に気づく」仕組みですが、ここで扱うのは「異常を意図的に起こして備えを検証する」プロアクティブな手法です。

障害対応そのものにも型があります。根本原因分析(RCA)の基本手順は、① 現象の確定(何が・いつから・どの範囲で)→ ② 直近の変更の確認(デプロイ・設定変更 — 障害の多くは変更起因)→ ③ テレメトリーでの絞り込み(ダッシュボードで異常な指標を見つけ、ログで該当リクエストを特定し、トレースで遅い区間を突き止める)→ ④ 仮説を立てて検証 → ⑤ 復旧後にポストモーテムで恒久対策、という流れです。ロールバックできる障害はまず戻して(第 16 章)、原因究明は復旧後に行うのが鉄則です。

つまずきポイント

ログの取り込み課金が静かに膨らむ: 無料枠は月 50 GiB/プロジェクト。デバッグレベルのアプリログや VPC フローログを出しっぱなしにすると簡単に超えます(超過 $0.50/GiB、2026-08 時点)。対策は _Default シンクへの除外フィルタで、除外したログは保存されず課金もされません。ただしログエクスプローラでも見えなくなるので、「量の多い正常系ログをサンプリング除外し、エラーは全量残す」のような設計にします。
ログベースの指標が過去にさかのぼらない: ユーザー定義のログベース指標は作成後に届いたログしか数えません。「障害の調査中に指標を作ったがグラフが空」は正常な挙動です。過去分を集計したいときはログエクスプローラの集計機能か、Log Analytics(SQL)を使います。また指標のデータは毎分更新のため、アラート条件では欠落データ(データなし期間)の扱いを明示的に設定しておかないと、トラフィックゼロの時間帯に誤検知・見逃しが起きます。
アップタイムチェックが「全リージョンから」来ることを忘れる: チェックは最低 3 ロケーションのチェッカーから届くので、ファイアウォールや Cloud Armor で特定の送信元だけ許可しているとチェックだけが失敗します。チェッカーの送信元 IP 範囲の許可が必要です。また課金の実行回数は「チェック回数 × リージョン数」で数えるため、間隔 1 分・全リージョンでは実行数が意外に伸びます。学習用途は --period=5 で十分です。
VM のメモリ使用率が「無い」: Compute Engine が自動で出すのはハイパーバイザから観測できる指標(CPU など)だけで、メモリ使用率やディスク空き容量など OS 内部の指標・アプリログの収集には Ops Agent のインストールが必要です(第 4 章)。「メモリのアラートを設定したいのに指標が見つからない」の原因はほぼこれです。

理解度チェック

Q1. SLI・SLO・SLA の違いを一言ずつで説明すると?

SLI は「測定値」(例: 成功応答の割合)、SLO はその「内部目標」(例: 28 日で 99.9%)、SLA は SLO を含む「顧客との契約」で未達時の罰則(返金など)を伴います。内部 SLO は SLA より厳しくして、契約違反の前に検知・対応できる余白を作ります。

Q2. _Required バケットと _Default バケットの違いは?

_Required は管理アクティビティ監査ログなどが必ず入るバケットで、保持 400 日・変更/無効化不可・ストレージ課金なし。_Default はそれ以外のログの既定の保存先で、保持は既定 30 日(1〜3650 日に変更可)、シンクのフィルタ変更や無効化ができます(2026-08 時点)。

Q3. SLO 99.9%・コンプライアンス期間 30 日のサービスが持つエラーバジェットは、全停止時間に換算すると約何分?

約 43.2 分です。30 日 = 43,200 分の 0.1%(1 − 0.999)が許容される失敗分。99.99% なら 4.32 分に減ります。この換算は「その可用性目標は本当に必要か(運用コストに見合うか)」を顧客と議論する材料になります。

Q4.(試験形式)マイクロサービス構成の EC サイトで、チェックアウト処理の 95 パーセンタイルレイテンシが悪化した。複数サービスを経由するリクエストの「どの区間」で時間を消費しているかを特定するのに最適なツールは?
A. Cloud Profiler B. Cloud Trace C. Error Reporting D. Cloud Logging のログベース指標

B。Cloud Trace はリクエストをスパンに分解し、サービス間のどの区間で時間を使ったかを可視化する分散トレーシングです。A の Profiler は特定サービス「内部」の CPU・メモリのホットスポット分析で区間特定の後段に使う道具、C はエラー(例外)の集約でレイテンシは扱わない、D は件数や抽出値の時系列化で「どの区間か」には答えられません。

Q5.(試験形式)金融企業が、組織配下の全プロジェクトの管理アクティビティ監査ログを 5 年間保全し、セキュリティチームだけが検索できるようにしたい。運用負荷が最小の構成は?
A. 各プロジェクトの _Default バケットの保持期間を 1825 日に延長する B. _Required バケットの保持期間を 5 年に延長する C. 組織レベルの集約シンクで中央プロジェクトのログバケットへルーティングし、保持期間を 1825 日に設定して IAM で閲覧を絞る D. 毎月ログを手動で Cloud Storage にコピーする

C。集約シンクなら新規プロジェクトが増えても自動で対象になり、中央バケットの保持期間(最長 3650 日)と IAM で要件を満たせます。A はプロジェクトごとの設定が漏れやすくアクセス分離もできない、B は _Required の保持期間(400 日)は変更不可、D は手動運用で「運用負荷最小」に反します。

まとめと次章へ

「気づく・調べる・数値で運用する」仕組みが整いました。次の第 16 章では、インフラをコードで再現可能にし、リリース自体を安全にする IaC と CI/CD — Terraform・Cloud Build・Cloud Deploy とデプロイ戦略 — を扱います。エラーバジェットが「いつリリースするか」を決め、CI/CD が「どう安全にリリースするか」を決める、という接続です。

参考リンク(公式ドキュメント):