目次

1.Gemini CLI Extensionsのobservabilityについて
2.observabilityのExtensionsをインストール
3.自然言語でログ調査をしてみる
4.終わりに

1.Gemini CLI Extensionsのobservabilityについて

Gemini CLI Extensions の observability は、MCP サーバーを介して Gemini CLI からの自然言語コマンドを適切な API 呼び出しに変換し、Google Cloud 環境の理解、管理、トラブルシューティングに活用できる拡張機能です。具体的には自然言語コマンドから Cloud Logging、Cloud Monitoring、Cloud Trace、Error Reporting の API を叩き、ログ、メトリクス、トレース、エラー情報を取得できます。
詳細については公式リポジトリの README を参照ください。

本ブログではテレメトリ送信設定に関する弊社のブログの内容をベースとした環境設定を事前準備として行なっています。

具体的には以下です。

  • Google Cloud アカウントに Gemini CLI の実行ログ保管先としてのプロジェクトを作成済み。(プロジェクト名 cloud-telemetry-lab
  • gcloud CLI がインストール済み。( gcloud --version
  • Gemini CLI がインストール済み。( gemini --version
  • gcloud CLI 認証を実行済み。( gcloud auth application-default login
  • デフォルトプロジェクトを設定済み。( gcloud config set project cloud-telemetry-lab
  • 設定ファイルの環境変数に使用するプロジェクトを設定済み。( export GOOGLE_CLOUD_PROJECT=cloud-telemetry-lab
  • Google Cloud プロジェクト(cloud-telemetry-lab)にて、Cloud Trace、Cloud Monitoring、Cloud Logging、Error Reporting の API を有効化済み。
  • 作成したサービスアカウントに、roles/cloudtrace.agent、roles/logging.logWriter、roles/monitoring.metricWriter、roles/errorreporting.viewer の権限を付与済み。
  • サービスアカウント用の認証キー(JSON)を作成済み(~/gemini-cli-key.json)
  • 設定ファイルの環境変数に認証キーを設定済み。
  • Gemini CLI の telemetory を有効化済み(.gemini/settings.json で target: “gcp”を設定)
  • Gemini CLI でプロンプトを実行し、ログが Google Cloud に送信されていることを確認済み。

これらを実施済みの上で observability の拡張機能をインストール。
Cloud Logging に送信された Gemini CLI の実行ログを自然言語で確認してみます。

2.observabilityのExtensionsをインストール

私の端末の環境について、利用OS、Gemini CLI、Node.js のバージョンは以下です。

  • macOS:Sequoia 15.7.2
  • Gemini CLIのバージョン( gemini --version ):0.22.4
  • Node.jsのバージョン( node --version ):24.11.1

カタログサイトにのっているインストールコマンドをターミナルで実行します。

gemini extensions install https://github.com/gemini-cli-extensions/observability

この時点では Gemini CLI を立ち上げていません。
インストール実行時、サードパーティ製品に関する注意書きが表示され、次に MCP サーバーの起動と GEMINI.md への情報追加(Context file の設定)に関する表示がされています。
Yesで続行します。

Creating GCP exporters with projectId: cloud-telemetry-lab using ADC
Installing extension "observability".
**The extension you are about to install may have been created by a third-party developer and sourced from a public repository. Google does not vet, endorse, or guarantee the functionality or security of extensions. Please carefully inspect any extension and its source code before installing to understand the permissions it requires and the actions it may perform.**
This extension will run the following MCP servers:
  * observability (local): npx -y @google-cloud/observability-mcp
This extension will append info to your gemini.md context using GEMINI.md
Do you want to continue? [Y/n]: Y
Extension "observability" installed successfully and enabled.

これで observability の拡張機能のインストールが成功です。

次にターミナルで gemini コマンドを実行し、Gemini CLI を立ち上げます。

gemini

Gemini CLI を立ち上げました。

/extensions listコマンドでアクティブな拡張機能を確認できます。
observability が active で表示されています。

次に/mcpコマンドを実行すると observability の MCP で使用できるツールが表示されます。

以下は公式リポジトリのツールリファレンス(日本語訳)です。
私の参照したタイミングでは12個のツール が記載されていますが、/mcpコマンドで実際に使用可能なツールを確認すると13個のツールが表示されました。
差分としては list_alerts というツールになります。

拡張機能に関するディレクトリも見てみます。

~/.gemini/extensions/observability/

observability フォルダが作成されています。
このフォルダ内に格納されている2つのファイル(gemini-extension.json と GEMINI.md)を見てみます。

gemini-extension.json は拡張機能の設定ファイルのようなもので、拡張機能の説明、使用するコンテキストファイル、起動する MCP サーバーの情報が定義されています。

{
  "name": "observability",
  "version": "0.1.0",
  "description": "Enable MCP-compatible AI agents to interact with Google Cloud.",
  "contextFileName": "GEMINI.md",
  "mcpServers": {
    "observability": {
      "command": "npx",
      "args": [
        "-y",
        "@google-cloud/observability-mcp"
      ]
    }
  }
}

GEMINI.md は英文で書かれています。
内容としては、あなたは Google Cloud ユーザーがリソースを検索、管理、トラブルシューティング、最適化するのを支援する GCP エージェントです。
との役割定義から始まり、利用可能なツール(ログ、アラートポリシー、メトリクス、トレース、エラー情報)の説明、ガイドライン、各 API のリファレンスリンクが記載されています。
このコンテキストが Gemini CLI の起動時に読み込まれ、Gemini に対してこの方針に従いながら Google Cloud の情報を扱い、ユーザーからのリクエストに応えるという振る舞いの指針になります。

# Cloud Observability MCP Extension for Gemini CLI

You are a GCP agent that helps Google Cloud users find, manage, troubleshoot and
optimize their Google Cloud resources.

Cloud Observability MCP provides a set of tools to list Google Cloud
Observability resources. You can use these commands to perform many common
platform tasks.

For example, you can use the Cloud Observability APIs to obtain following:

-   Log Entries for a given project via Cloud Logging
-   Alert Policies via Cloud Monitoring
-   Metrics via Cloud Monitoring
-   Traces via Cloud Trace
-   Error Reporting Groups via Cloud Error Reporting

## Guiding Principles

-   **Prefer Specific, Native Tools**: Always prefer to use the most specific
    tool available. This ensures better-structured data and more reliable
    execution.
-   **Prefer Native Tools:** Prefer to use the dedicated tools provided by this
    extension instead of a generic tool for the same functionality.
-   **Clarify Ambiguity:** Do not guess or assume values for required parameters
    like cluster names or locations. If the user's request is ambiguous, ask
    clarifying questions to confirm the exact resource they intend to interact
    with.
-   **Use Defaults:** If a `project_id` is not specified by the user, you can
    use the default value configured in the environment if present.

## Cloud Observability Reference Documentation

If additional context or information is needed on a Cloud Observability API,
reference documentation can be found at
https://cloud.google.com/docs/observability.

-   Logging: https://cloud.google.com/logging/docs/reference/v2/rest
    -   For example, documentation on `list_log_entries` can be found at
        https://cloud.google.com/logging/docs/reference/v2/rest/v2/entries/list
-   Monitoring: https://cloud.google.com/monitoring/api/v3
    -   For example, documentation on `list_time_series` can be found at
        https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.timeSeries/list
-   Trace: https://cloud.google.com/trace/docs/reference/v1/rest
    -   For example, documentation on `list_traces` can be found at
        https://cloud.google.com/trace/docs/reference/v1/rest/v1/projects.traces/list
-   Error Reporting: https://cloud.google.com/error-reporting/reference/rest
    -   For example, documentation on `list_group_stats` can be found at
        https://cloud.google.com/error-reporting/reference/rest/v1beta1/projects.groupStats/list

3.自然言語でログ調査をしてみる

調査対象のログは Gemini CLI の実行ログです。
管理者視点からログ調査をする場合、

  • 誰が実行したか
  • どんなプロンプトが実行されているか
  • どれくらいのトークン数を使っているか

が気になるところかと思うので、これらを自然言語で問い合わせてみます。

Cloud Logging のログを読み取るには Logging Viewer(roles/logging.viewer)ロールが必要なので、サービスアカウントに追加します。

gcloud projects add-iam-policy-binding cloud-telemetry-lab \
  --member="serviceAccount:okawa-gemini-cli-telemetry@cloud-telemetry-lab.iam.gserviceaccount.com" \
  --role="roles/logging.viewer"

特定期間における指定プロジェクトの Gemini CLI 経由の Gemini API 利用状況を調べます。
あらかじめ、「gemini "2025年12月11日に発表があったGoogle Maps Grounding Liteについて簡単に教えて"」というプロンプトを実行しているので、この実行ログが記録されています。

Gemini CLI 立ち上げ、新たにプロンプトを実行します。
プロンプトの内容は以下です。

gemini "プロジェクト『cloud-telemetry-lab』について、Gemini CLIからのGemini API利用ログを、2025-12-25T00:00:00Zから2025-12-29T23:59:59Zまでの期間で表示してください。実行者、プロンプト内容、入出力トークン数がわかるようにテーブル形式でお願いします。これらの情報は gemini_cli というログストリームに含まれているはずです。"

Gemini CLI が list_log_entries ツールを使用して Cloud Logging をクエリしています。

実行結果は以下です(実行者情報はマスキングしています)。

リクエスト通り、テーブル形式で実行者、プロンプト、トークン数をテーブル形式で出力してくれています。

自然言語でログから欲しい情報の取得ができました。
コンソールにアクセスし、クエリを組み立て結果を整形する手間がなく、自然言語での依頼をするだけで整形された結果が得られる効率性がこの拡張機能のメリットの一つかと思います。

4.終わりに

Gemini CLI Extensions の observability を使い、自然言語で Cloud Logging から情報取得する例をご紹介しました。
この拡張機能の対応範囲はメトリクス確認やトレース分析、エラーレポートの閲覧など多岐に渡ります。
つまり、これらを扱う Google Cloud の運用保守業務でも同じような効率化が実現可能です。
Google Cloud 環境下のシステム運用保守を担うエンジニアの皆様にとって、本ブログが業務効率化の一助となれば幸いです。