[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M69909CM2PN5P9GS9V85SYMB":3,"skill-same:01M69909CM2PN5P9GS9V85SYMB":108},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":34,"publishedAt":54,"linkOnly":55,"markdownContent":56,"markdownBody":57,"frontMatter":58,"refName":66,"commitSha":67,"skillDirectory":68,"forksCount":69,"repositoryHtmlUrl":70,"repositoryHomepageUrl":71,"ownerHtmlUrl":72,"ownerBlogUrl":73,"ownerDescription":74,"updatedAt":75,"install":76,"resources":89},"01M69909CM2PN5P9GS9V85SYMB","google-agents-cli-observability",null,"This skill should be used when the user wants to \"set up tracing\", \"monitor my agent\", \"configure logging\", \"add observability\", \"debug production traffic\", or needs guidance on monitoring deployed agents, including ADK (Agent Development Kit) agents. Covers Cloud Trace, prompt-response logging, BigQuery Agent Analytics, third-party integrations (AgentOps, Phoenix, MLflow, etc.), and troubleshooting. Part of the agents-cli skills suite. Do NOT use for deployment setup (use google-agents-cli-deploy) or API code patterns (use google-agents-cli-adk-code).","google\u002Fagents-cli","google","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1342004?v=4","01M698VYEFDM0VJBZDYYJ2T83S","Google","01M698ZVGDEBGAXVZGNKKKCRBQ",6336,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fagents-cli\u002Fblob\u002Fmain\u002Fskills\u002Fgoogle-agents-cli-observability\u002FSKILL.md",[18,23,26,31],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000013","分析与可视化","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":27,"categoryName":28,"taxonomyType":29,"taxonomyTypeDesc":30},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",{"categoryNo":32,"categoryName":33,"taxonomyType":29,"taxonomyTypeDesc":30},"01JBSEEDCAT000000000000033","数据分析师",[35,9,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53],"cli","google agents cli observability","observability","traffic","kit","code patterns","mlflow","uv","up","install","configure","api","agent development","SET","monitoring","apache","code","agent development kit","adk","2026-11-10 10:12:30",false,"---\nname: google-agents-cli-observability\ndescription: >\n  This skill should be used when the user wants to \"set up tracing\",\n  \"monitor my agent\", \"configure logging\", \"add observability\",\n  \"debug production traffic\", or needs guidance on monitoring deployed\n  agents, including ADK (Agent Development Kit) agents.\n  Covers Cloud Trace, prompt-response logging, BigQuery Agent Analytics,\n  third-party integrations (AgentOps, Phoenix, MLflow, etc.), and troubleshooting.\n  Part of the agents-cli skills suite.\n  Do NOT use for deployment setup (use google-agents-cli-deploy) or\n  API code patterns (use google-agents-cli-adk-code).\nmetadata:\n  author: Google\n  license: Apache-2.0\n  version: 1.13.0\n  requires:\n    bins:\n      - agents-cli\n    install: \"uv tool install google-agents-cli\"\n---\n\n# Observability Guide\n\n> **Cloud Trace** works out of the box — no infrastructure needed. **Prompt-response logging** and **BigQuery Agent Analytics** require Terraform-provisioned infrastructure (service account, GCS bucket, BigQuery dataset). Run `agents-cli infra single-project --apply --project PROJECT_ID` to provision these resources. Go projects get the BigQuery telemetry stack too; the GCS completion upload behind prompt-response logging and the BigQuery Agent Analytics plugin are Python only. See `references\u002Fcloud-trace-and-logging.md` for details, env vars, and verification commands. If your project isn't scaffolded yet, see `\u002Fgoogle-agents-cli-scaffold` first.\n\n### Deployment order\n\n| Do you want Terraform-managed observability? | Action |\n|---|---|\n| **No** | Run `agents-cli deploy` directly (works for all targets). |\n| **Yes** | Run `agents-cli infra single-project --apply` first, then `agents-cli deploy`. |\n\n**If you already ran `agents-cli deploy` imperatively:**\nDo not apply Terraform afterward. For Agent Runtime in Gemini platform, Terraform owns the whole engine (service account, deployment spec, env vars), so a later apply can't be reconciled without taking over the resource. \nEither delete the deployment and start over, or keep the SDK-deployed instance — skip `infra single-project` and set the observability env vars by re-running `agents-cli deploy --update-env-vars \"KEY=VALUE,...\"`; deploy matches the existing Reasoning Engine by display name and updates it in place, preserving env vars set outside the deploy. You must also grant its service account the telemetry IAM roles the Terraform module would otherwise provision: `roles\u002Fstorage.admin` (write completions to the logs bucket), `roles\u002Flogging.logWriter`, `roles\u002Fcloudtrace.agent`, plus `roles\u002Fbigquery.dataOwner` + `roles\u002Fbigquery.jobUser` when scaffolded with `--bq-analytics`. The full set lives in `deployment\u002Fterraform\u002Fsingle-project\u002Fiam.tf` (from `app_sa_roles`) and `telemetry.tf`. Terraform-managed env vars aren't available in this mode.\n\n### Reference Files\n\n| File | Contents |\n|------|----------|\n| `references\u002Fcloud-trace-and-logging.md` | Scaffolded project details — Terraform-provisioned resources, environment variables, verification commands, enabling\u002Fdisabling locally |\n| `references\u002Fbigquery-agent-analytics.md` | BQ Agent Analytics plugin — enabling, key features, GCS offloading, tool provenance |\n| `references\u002Fadk-docs.md` | **ADK:** adk.dev pages to fetch for detail beyond this skill |\n| `references\u002Ffeedback-mechanism.md` | Adding a user-feedback endpoint — request model, structured logging, log sink → BigQuery |\n\n---\n\n## Observability Tiers\n\nChoose the right level of observability based on your needs:\n\n| Tier | What It Does | Scope | Default State | Best For |\n|------|-------------|-------|---------------|----------|\n| **Cloud Trace** | Distributed tracing — execution flow, latency, errors via OpenTelemetry spans | All templates, all environments | Always enabled | Debugging latency, understanding agent execution flow |\n| **Prompt-Response Logging** | GenAI interactions exported to GCS, BigQuery, and Cloud Logging | Scaffolded ADK Python and Claude projects | Disabled locally, enabled when deployed | Auditing LLM interactions, compliance |\n| **BigQuery Agent Analytics** | Structured agent events (LLM calls, tool use, outcomes) to BigQuery | ADK Python agents with the plugin enabled; Claude template agents | Opt-in (`--bq-analytics` at scaffold time) | Conversational analytics, custom dashboards, LLM-as-judge evals |\n| **Third-Party Integrations** | External observability platforms (AgentOps, Phoenix, MLflow, etc.) | Any OpenTelemetry-instrumented agent | Opt-in, per-provider setup | Team collaboration, specialized visualization, prompt management |\n\n**Ask the user** which tier(s) they need — they can be combined. Cloud Trace is always on; the others are additive.\n\n---\n\n## Cloud Trace\n\nScaffolded agents use OpenTelemetry to emit distributed traces. Every agent invocation produces spans that track the full execution flow.\n\n### Span Hierarchy\n\n> **ADK projects.** These are ADK's span names; other frameworks emit their own (`generate_content` comes from the shared google-genai instrumentor either way).\n\n```\ninvoke_workflow (top-level run)\n  └── invoke_agent (one per agent in the chain)\n        ├── call_llm (model request)\n        │     └── generate_content (underlying GenAI model call)\n        └── execute_tool (tool execution)\n```\n\n### Setup by Deployment Type\n\n| Deployment | Setup |\n|-----------|-------|\n| **Agent Runtime** | Automatic — exporters wired at startup, gated on `GOOGLE_CLOUD_AGENT_ENGINE_ENABLE_TELEMETRY` (set by deploy); exports to Cloud Trace\u002FLogging + the Agent Runtime page in the Google Cloud console |\n| **Cloud Run \u002F GKE (scaffolded)** | Automatic — exporters wired at startup, exports to Cloud Trace\u002FLogging |\n| **Cloud Run \u002F GKE (manual)** | Configure OpenTelemetry exporter in your app |\n| **Local dev** | Works with `agents-cli playground`; traces visible in Cloud Console |\n\nWired at app startup — **ADK Python:** `get_fast_api_app(otel_to_cloud=True)` in `app\u002Ffast_api_app.py`; **ADK Go:** `setupObservability()` in `observability.go`; other templates call their own. `references\u002Fcloud-trace-and-logging.md` has the details.\n\nView traces: **Cloud Console → Trace → Trace explorer**\n\n**ADK:** for detailed setup instructions (Agent Runtime CLI\u002FSDK, Cloud Run, custom deployments), fetch `https:\u002F\u002Fadk.dev\u002Fintegrations\u002Fcloud-trace\u002Findex.md`.\n\n---\n\n## Prompt-Response Logging\n\nCaptures GenAI interactions and exports to GCS (JSONL) and BigQuery (via log sinks + external tables). Content is governed by **two independent tiers**; the net Terraform-deploy default is **full content in GCS\u002FBigQuery, none in traces**:\n\n| Tier | Captures | Controlled by | Default (Terraform deploy) |\n|------|----------|---------------|----------------------------|\n| **GCS\u002FBigQuery completions** | Full prompts\u002Fresponses (the prompt-response logging feature) | `OTEL_INSTRUMENTATION_GENAI_COMPLETION_HOOK=upload` + `LOGS_BUCKET_NAME` | **On** — full content |\n| **Trace spans \u002F Cloud Logging events** | Span\u002Fevent content | `OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT` (plus `ADK_CAPTURE_MESSAGE_CONTENT_IN_SPANS=false`, **ADK Python only**) | **Off** — `NO_CONTENT` |\n\nThe tiers are independent: GCS\u002FBigQuery uploads capture full content whenever their upload vars are set and do **not** honor `OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT`, which governs the traces\u002Fevents tier only.\n\n**ADK Python** reads it as the experimental-semconv enum:\n\n- `NO_CONTENT` — no content in spans\u002Fevents (scaffolded default)\n- `EVENT_ONLY` — content in Cloud Logging events\n- `SPAN_ONLY` \u002F `SPAN_AND_EVENT` — content in trace spans\n- `true` \u002F `false` — **invalid**; fall back to `NO_CONTENT`\n\n**ADK Go** reads the same variable as a **boolean**: `\"1\"` or `\"true\"` capture content, every other\nvalue — including the enum members above — elides it.\n\nFor the full mechanics (semconv opt-in, declarative Terraform config, env-var table, enabling\u002Fdisabling, verification commands), see `references\u002Fcloud-trace-and-logging.md`. For ADK logging docs (log levels, configuration, debugging), fetch `https:\u002F\u002Fadk.dev\u002Fobservability\u002Flogging\u002Findex.md`.\n\n---\n\n## BigQuery Agent Analytics Plugin\n\n> **ADK projects.** Optional ADK plugin that logs structured agent events to BigQuery. Enable with `--bq-analytics` at scaffold time. See `references\u002Fbigquery-agent-analytics.md` for details.\n\n---\n\n## Third-Party Integrations\n\nMany third-party observability platforms can ingest agent telemetry (via OpenTelemetry or custom instrumentation). The table below covers common ones; the full list is larger (see the pointer below it).\n\n| Platform | Key Differentiator | Setup Complexity | Self-Hosted Option |\n|----------|-------------------|-----------------|-------------------|\n| **AgentOps** | Session replays, 2-line setup, replaces native telemetry | Minimal | No (SaaS) |\n| **Arize AX** | Commercial platform, production monitoring, evaluation dashboards | Low | No (SaaS) |\n| **Phoenix** | Open-source, custom evaluators, experiment testing | Low | Yes |\n| **MLflow** | OTel traces to MLflow Tracking Server, span tree visualization | Medium (needs SQL backend) | Yes |\n| **Monocle** | 1-call setup, VS Code Gantt chart visualizer | Minimal | Yes (local files) |\n| **Weave** | W&B platform, team collaboration, timeline views | Low | No (SaaS) |\n| **Freeplay** | Prompt management + evals + observability in one platform | Low | No (SaaS) |\n\n**Ask the user** which platform they prefer — present the trade-offs and let them choose. **ADK:** fetch a platform's setup page at `https:\u002F\u002Fadk.dev\u002Fintegrations\u002F\u003Cslug>\u002Findex.md` (slugs for the table above: `agentops`, `arize-ax`, `phoenix`, `mlflow-tracing`, `monocle`, `weave`, `freeplay`); ADK has more observability integrations (Datadog, Galileo, LangWatch, Latitude, Future AGI, Respan, Zespan, …) — browse the complete, current list at `https:\u002F\u002Fadk.dev\u002Fintegrations\u002F` (observability topic). On other frameworks the OpenTelemetry-based platforms still work, but follow the platform's own setup docs.\n\n---\n\n## Troubleshooting\n\n| Issue | Solution |\n|-------|----------|\n| No traces in Cloud Trace | Verify telemetry setup runs at startup and the SA has the `cloudtrace.agent` role. **ADK Python:** `fast_api_app.py` uses `get_fast_api_app(otel_to_cloud=True)`; **ADK Go:** `observability.go` build the exporter manually. Agent Runtime additionally gates this on `GOOGLE_CLOUD_AGENT_ENGINE_ENABLE_TELEMETRY`. |\n| Prompt-response data not appearing | Check `LOGS_BUCKET_NAME` is set; verify SA has `storage.objectCreator` on the bucket; check app logs for telemetry setup warnings |\n| Content in traces\u002Fevents (unwanted) | **ADK Python:** `OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT=NO_CONTENT` keeps content out of spans\u002Fevents. **ADK Go:** any value other than `1`\u002F`true` does, so unset it or set `false`. NOTE: GCS\u002FBigQuery completions still capture full content — to stop that, remove `LOGS_BUCKET_NAME`\u002F`OTEL_INSTRUMENTATION_GENAI_COMPLETION_HOOK` (drop the upload block in `service.tf`) |\n| BigQuery Analytics not logging | **ADK Python:** verify the plugin is configured in `app\u002Fagent.py`; **Claude:** check the startup log for a BigQuery Agent Analytics warning. Both: check `BQ_ANALYTICS_DATASET_ID` env var is set |\n| Third-party integration not capturing spans | Check provider-specific env vars (API keys, endpoints); some providers (AgentOps) replace native telemetry |\n| Traces missing tool spans | **ADK:** tool execution spans appear under `execute_tool` (other frameworks use their own span names) — check trace explorer filters |\n| High telemetry costs | Turn content capture off (`NO_CONTENT` in Python, `false` in Go); reduce BigQuery retention; disable unused tiers |\n\n---\n\n## Related Skills\n\n- `\u002Fgoogle-agents-cli-deploy` — Deployment targets, CI\u002FCD pipelines, and production workflows\n- `\u002Fgoogle-agents-cli-workflow` — Development workflow, coding guidelines, and operational rules\n- `\u002Fgoogle-agents-cli-adk-code` — ADK API quick reference for writing agent code, Python and Go\n","# Observability Guide\n\n> **Cloud Trace** works out of the box — no infrastructure needed. **Prompt-response logging** and **BigQuery Agent Analytics** require Terraform-provisioned infrastructure (service account, GCS bucket, BigQuery dataset). Run `agents-cli infra single-project --apply --project PROJECT_ID` to provision these resources. Go projects get the BigQuery telemetry stack too; the GCS completion upload behind prompt-response logging and the BigQuery Agent Analytics plugin are Python only. See `references\u002Fcloud-trace-and-logging.md` for details, env vars, and verification commands. If your project isn't scaffolded yet, see `\u002Fgoogle-agents-cli-scaffold` first.\n\n### Deployment order\n\n| Do you want Terraform-managed observability? | Action |\n|---|---|\n| **No** | Run `agents-cli deploy` directly (works for all targets). |\n| **Yes** | Run `agents-cli infra single-project --apply` first, then `agents-cli deploy`. |\n\n**If you already ran `agents-cli deploy` imperatively:**\nDo not apply Terraform afterward. For Agent Runtime in Gemini platform, Terraform owns the whole engine (service account, deployment spec, env vars), so a later apply can't be reconciled without taking over the resource. \nEither delete the deployment and start over, or keep the SDK-deployed instance — skip `infra single-project` and set the observability env vars by re-running `agents-cli deploy --update-env-vars \"KEY=VALUE,...\"`; deploy matches the existing Reasoning Engine by display name and updates it in place, preserving env vars set outside the deploy. You must also grant its service account the telemetry IAM roles the Terraform module would otherwise provision: `roles\u002Fstorage.admin` (write completions to the logs bucket), `roles\u002Flogging.logWriter`, `roles\u002Fcloudtrace.agent`, plus `roles\u002Fbigquery.dataOwner` + `roles\u002Fbigquery.jobUser` when scaffolded with `--bq-analytics`. The full set lives in `deployment\u002Fterraform\u002Fsingle-project\u002Fiam.tf` (from `app_sa_roles`) and `telemetry.tf`. Terraform-managed env vars aren't available in this mode.\n\n### Reference Files\n\n| File | Contents |\n|------|----------|\n| `references\u002Fcloud-trace-and-logging.md` | Scaffolded project details — Terraform-provisioned resources, environment variables, verification commands, enabling\u002Fdisabling locally |\n| `references\u002Fbigquery-agent-analytics.md` | BQ Agent Analytics plugin — enabling, key features, GCS offloading, tool provenance |\n| `references\u002Fadk-docs.md` | **ADK:** adk.dev pages to fetch for detail beyond this skill |\n| `references\u002Ffeedback-mechanism.md` | Adding a user-feedback endpoint — request model, structured logging, log sink → BigQuery |\n\n---\n\n## Observability Tiers\n\nChoose the right level of observability based on your needs:\n\n| Tier | What It Does | Scope | Default State | Best For |\n|------|-------------|-------|---------------|----------|\n| **Cloud Trace** | Distributed tracing — execution flow, latency, errors via OpenTelemetry spans | All templates, all environments | Always enabled | Debugging latency, understanding agent execution flow |\n| **Prompt-Response Logging** | GenAI interactions exported to GCS, BigQuery, and Cloud Logging | Scaffolded ADK Python and Claude projects | Disabled locally, enabled when deployed | Auditing LLM interactions, compliance |\n| **BigQuery Agent Analytics** | Structured agent events (LLM calls, tool use, outcomes) to BigQuery | ADK Python agents with the plugin enabled; Claude template agents | Opt-in (`--bq-analytics` at scaffold time) | Conversational analytics, custom dashboards, LLM-as-judge evals |\n| **Third-Party Integrations** | External observability platforms (AgentOps, Phoenix, MLflow, etc.) | Any OpenTelemetry-instrumented agent | Opt-in, per-provider setup | Team collaboration, specialized visualization, prompt management |\n\n**Ask the user** which tier(s) they need — they can be combined. Cloud Trace is always on; the others are additive.\n\n---\n\n## Cloud Trace\n\nScaffolded agents use OpenTelemetry to emit distributed traces. Every agent invocation produces spans that track the full execution flow.\n\n### Span Hierarchy\n\n> **ADK projects.** These are ADK's span names; other frameworks emit their own (`generate_content` comes from the shared google-genai instrumentor either way).\n\n```\ninvoke_workflow (top-level run)\n  └── invoke_agent (one per agent in the chain)\n        ├── call_llm (model request)\n        │     └── generate_content (underlying GenAI model call)\n        └── execute_tool (tool execution)\n```\n\n### Setup by Deployment Type\n\n| Deployment | Setup |\n|-----------|-------|\n| **Agent Runtime** | Automatic — exporters wired at startup, gated on `GOOGLE_CLOUD_AGENT_ENGINE_ENABLE_TELEMETRY` (set by deploy); exports to Cloud Trace\u002FLogging + the Agent Runtime page in the Google Cloud console |\n| **Cloud Run \u002F GKE (scaffolded)** | Automatic — exporters wired at startup, exports to Cloud Trace\u002FLogging |\n| **Cloud Run \u002F GKE (manual)** | Configure OpenTelemetry exporter in your app |\n| **Local dev** | Works with `agents-cli playground`; traces visible in Cloud Console |\n\nWired at app startup — **ADK Python:** `get_fast_api_app(otel_to_cloud=True)` in `app\u002Ffast_api_app.py`; **ADK Go:** `setupObservability()` in `observability.go`; other templates call their own. `references\u002Fcloud-trace-and-logging.md` has the details.\n\nView traces: **Cloud Console → Trace → Trace explorer**\n\n**ADK:** for detailed setup instructions (Agent Runtime CLI\u002FSDK, Cloud Run, custom deployments), fetch `https:\u002F\u002Fadk.dev\u002Fintegrations\u002Fcloud-trace\u002Findex.md`.\n\n---\n\n## Prompt-Response Logging\n\nCaptures GenAI interactions and exports to GCS (JSONL) and BigQuery (via log sinks + external tables). Content is governed by **two independent tiers**; the net Terraform-deploy default is **full content in GCS\u002FBigQuery, none in traces**:\n\n| Tier | Captures | Controlled by | Default (Terraform deploy) |\n|------|----------|---------------|----------------------------|\n| **GCS\u002FBigQuery completions** | Full prompts\u002Fresponses (the prompt-response logging feature) | `OTEL_INSTRUMENTATION_GENAI_COMPLETION_HOOK=upload` + `LOGS_BUCKET_NAME` | **On** — full content |\n| **Trace spans \u002F Cloud Logging events** | Span\u002Fevent content | `OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT` (plus `ADK_CAPTURE_MESSAGE_CONTENT_IN_SPANS=false`, **ADK Python only**) | **Off** — `NO_CONTENT` |\n\nThe tiers are independent: GCS\u002FBigQuery uploads capture full content whenever their upload vars are set and do **not** honor `OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT`, which governs the traces\u002Fevents tier only.\n\n**ADK Python** reads it as the experimental-semconv enum:\n\n- `NO_CONTENT` — no content in spans\u002Fevents (scaffolded default)\n- `EVENT_ONLY` — content in Cloud Logging events\n- `SPAN_ONLY` \u002F `SPAN_AND_EVENT` — content in trace spans\n- `true` \u002F `false` — **invalid**; fall back to `NO_CONTENT`\n\n**ADK Go** reads the same variable as a **boolean**: `\"1\"` or `\"true\"` capture content, every other\nvalue — including the enum members above — elides it.\n\nFor the full mechanics (semconv opt-in, declarative Terraform config, env-var table, enabling\u002Fdisabling, verification commands), see `references\u002Fcloud-trace-and-logging.md`. For ADK logging docs (log levels, configuration, debugging), fetch `https:\u002F\u002Fadk.dev\u002Fobservability\u002Flogging\u002Findex.md`.\n\n---\n\n## BigQuery Agent Analytics Plugin\n\n> **ADK projects.** Optional ADK plugin that logs structured agent events to BigQuery. Enable with `--bq-analytics` at scaffold time. See `references\u002Fbigquery-agent-analytics.md` for details.\n\n---\n\n## Third-Party Integrations\n\nMany third-party observability platforms can ingest agent telemetry (via OpenTelemetry or custom instrumentation). The table below covers common ones; the full list is larger (see the pointer below it).\n\n| Platform | Key Differentiator | Setup Complexity | Self-Hosted Option |\n|----------|-------------------|-----------------|-------------------|\n| **AgentOps** | Session replays, 2-line setup, replaces native telemetry | Minimal | No (SaaS) |\n| **Arize AX** | Commercial platform, production monitoring, evaluation dashboards | Low | No (SaaS) |\n| **Phoenix** | Open-source, custom evaluators, experiment testing | Low | Yes |\n| **MLflow** | OTel traces to MLflow Tracking Server, span tree visualization | Medium (needs SQL backend) | Yes |\n| **Monocle** | 1-call setup, VS Code Gantt chart visualizer | Minimal | Yes (local files) |\n| **Weave** | W&B platform, team collaboration, timeline views | Low | No (SaaS) |\n| **Freeplay** | Prompt management + evals + observability in one platform | Low | No (SaaS) |\n\n**Ask the user** which platform they prefer — present the trade-offs and let them choose. **ADK:** fetch a platform's setup page at `https:\u002F\u002Fadk.dev\u002Fintegrations\u002F\u003Cslug>\u002Findex.md` (slugs for the table above: `agentops`, `arize-ax`, `phoenix`, `mlflow-tracing`, `monocle`, `weave`, `freeplay`); ADK has more observability integrations (Datadog, Galileo, LangWatch, Latitude, Future AGI, Respan, Zespan, …) — browse the complete, current list at `https:\u002F\u002Fadk.dev\u002Fintegrations\u002F` (observability topic). On other frameworks the OpenTelemetry-based platforms still work, but follow the platform's own setup docs.\n\n---\n\n## Troubleshooting\n\n| Issue | Solution |\n|-------|----------|\n| No traces in Cloud Trace | Verify telemetry setup runs at startup and the SA has the `cloudtrace.agent` role. **ADK Python:** `fast_api_app.py` uses `get_fast_api_app(otel_to_cloud=True)`; **ADK Go:** `observability.go` build the exporter manually. Agent Runtime additionally gates this on `GOOGLE_CLOUD_AGENT_ENGINE_ENABLE_TELEMETRY`. |\n| Prompt-response data not appearing | Check `LOGS_BUCKET_NAME` is set; verify SA has `storage.objectCreator` on the bucket; check app logs for telemetry setup warnings |\n| Content in traces\u002Fevents (unwanted) | **ADK Python:** `OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT=NO_CONTENT` keeps content out of spans\u002Fevents. **ADK Go:** any value other than `1`\u002F`true` does, so unset it or set `false`. NOTE: GCS\u002FBigQuery completions still capture full content — to stop that, remove `LOGS_BUCKET_NAME`\u002F`OTEL_INSTRUMENTATION_GENAI_COMPLETION_HOOK` (drop the upload block in `service.tf`) |\n| BigQuery Analytics not logging | **ADK Python:** verify the plugin is configured in `app\u002Fagent.py`; **Claude:** check the startup log for a BigQuery Agent Analytics warning. Both: check `BQ_ANALYTICS_DATASET_ID` env var is set |\n| Third-party integration not capturing spans | Check provider-specific env vars (API keys, endpoints); some providers (AgentOps) replace native telemetry |\n| Traces missing tool spans | **ADK:** tool execution spans appear under `execute_tool` (other frameworks use their own span names) — check trace explorer filters |\n| High telemetry costs | Turn content capture off (`NO_CONTENT` in Python, `false` in Go); reduce BigQuery retention; disable unused tiers |\n\n---\n\n## Related Skills\n\n- `\u002Fgoogle-agents-cli-deploy` — Deployment targets, CI\u002FCD pipelines, and production workflows\n- `\u002Fgoogle-agents-cli-workflow` — Development workflow, coding guidelines, and operational rules\n- `\u002Fgoogle-agents-cli-adk-code` — ADK API quick reference for writing agent code, Python and Go\n",{"name":5,"metadata":59,"description":65},{"author":12,"license":15,"version":60,"requires":61},"1.13.0",{"bins":62,"install":64},[63],"agents-cli","uv tool install google-agents-cli","This skill should be used when the user wants to \"set up tracing\", \"monitor my agent\", \"configure logging\", \"add observability\", \"debug production traffic\", or needs guidance on monitoring deployed agents, including ADK (Agent Development Kit) agents. Covers Cloud Trace, prompt-response logging, BigQuery Agent Analytics, third-party integrations (AgentOps, Phoenix, MLflow, etc.), and troubleshooting. Part of the agents-cli skills suite. Do NOT use for deployment setup (use google-agents-cli-deploy) or API code patterns (use google-agents-cli-adk-code).\n","main","896e4719c4184841325a301755781d6b3da233ef","skills\u002Fgoogle-agents-cli-observability",733,"https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fagents-cli","https:\u002F\u002Fgoogle.github.io\u002Fagents-cli\u002F","https:\u002F\u002Fgithub.com\u002Fgoogle","https:\u002F\u002Fopensource.google\u002F","Google ❤️ Open Source","2026-11-05 01:44:59",{"source":8,"skillName":5,"commands":77,"prompt":87,"zipAvailable":88},[78,81,84],{"tool":79,"command":80},"npx","npx skills add google\u002Fagents-cli --skill google-agents-cli-observability",{"tool":82,"command":83},"bunx","bunx skills add google\u002Fagents-cli --skill google-agents-cli-observability",{"tool":85,"command":86},"pnpm","pnpm dlx skills add google\u002Fagents-cli --skill google-agents-cli-observability","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fagents-cli\u002Fblob\u002Fmain\u002Fskills\u002Fgoogle-agents-cli-observability\u002FSKILL.md",true,[90,96,100,104],{"path":91,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":94,"sourceHtmlUrl":95},"references\u002Fadk-docs.md","REFERENCE","参考文档",445,"https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fagents-cli\u002Fblob\u002Fmain\u002Fskills\u002Fgoogle-agents-cli-observability\u002Freferences\u002Fadk-docs.md",{"path":97,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":98,"sourceHtmlUrl":99},"references\u002Fbigquery-agent-analytics.md",1604,"https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fagents-cli\u002Fblob\u002Fmain\u002Fskills\u002Fgoogle-agents-cli-observability\u002Freferences\u002Fbigquery-agent-analytics.md",{"path":101,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":102,"sourceHtmlUrl":103},"references\u002Fcloud-trace-and-logging.md",8438,"https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fagents-cli\u002Fblob\u002Fmain\u002Fskills\u002Fgoogle-agents-cli-observability\u002Freferences\u002Fcloud-trace-and-logging.md",{"path":105,"resourceType":92,"resourceTypeDesc":93,"sizeBytes":106,"sourceHtmlUrl":107},"references\u002Ffeedback-mechanism.md",3971,"https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fagents-cli\u002Fblob\u002Fmain\u002Fskills\u002Fgoogle-agents-cli-observability\u002Freferences\u002Ffeedback-mechanism.md",[109,132,154,176,185,204],{"skillNo":110,"name":111,"nameZh":6,"description":112,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":113,"categories":114,"keywords":120,"publishedAt":54},"01M6990ZGJV6CHR6CZK81S58CN","google-agents-cli-workflow","This skill should be used when the user wants to \"develop an agent\", \"build an agent using ADK\", \"run the agent locally\", \"debug agent code\", \"test an agent\", \"deploy an agent\", \"publish an agent\", \"monitor an agent\", or needs the ADK (Agent Development Kit) development lifecycle and coding guidelines. Entrypoint for building ADK agents. Always active — provides the full workflow (scaffold, build, evaluate, deploy, publish, observe), code preservation rules, model selection guidance, and troubleshooting steps for ADK or any agent development.","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fagents-cli\u002Fblob\u002Fmain\u002Fsrc\u002Fgoogle\u002Fagents\u002Fcli\u002Fskills\u002Fdata\u002Fgoogle-agents-cli-workflow\u002FSKILL.md",[115,118,119],{"categoryNo":116,"categoryName":117,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000011","运维与部署",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":27,"categoryName":28,"taxonomyType":29,"taxonomyTypeDesc":30},[9,121,35,122,53,52,47,123,124,125,126,127,39,42,51,128,129,50,130,131],"google agents cli workflow","workflow","development lifecycle","model","observe","selection","model selection","debug agent","publish","active","run",{"skillNo":133,"name":134,"nameZh":6,"description":135,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":136,"categories":137,"keywords":140,"publishedAt":54},"01M6990XH0S4MNS7YTDAMNAAEW","google-agents-cli-scaffold","This skill should be used when the user wants to \"create an agent project\", \"start a new ADK project\", \"build me a new agent\", \"add CI\u002FCD to my project\", \"add deployment\", \"enhance my project\", or \"upgrade my project\". Part of the agents-cli skills suite. Covers `agents-cli scaffold create`, `scaffold enhance`, and `scaffold upgrade` commands, template options, deployment targets, and the prototype-first workflow. Do NOT use for writing agent code (ADK projects: use google-agents-cli-adk-code) or deployment operations (use google-agents-cli-deploy).","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fagents-cli\u002Fblob\u002Fmain\u002Fsrc\u002Fgoogle\u002Fagents\u002Fcli\u002Fskills\u002Fdata\u002Fgoogle-agents-cli-scaffold\u002FSKILL.md",[138,139],{"categoryNo":116,"categoryName":117,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[141,9,35,142,53,143,144,145,146,147,42,148,122,51,149,150,50,151,152,153],"google agents cli scaffold","scaffold","writing","projects","new agent","project","ci","upgrade","create","me","options","template","CI\u002FCD",{"skillNo":155,"name":156,"nameZh":6,"description":157,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":158,"categories":159,"keywords":162,"publishedAt":54},"01M6990VP634A9G6052KQCZNYJ","google-agents-cli-publish","This skill should be used when the user wants to \"publish an agent\", \"publish my ADK agent\", \"register an agent with Gemini\", \"publish to Gemini\" (formerly Gemini Enterprise), or needs guidance on the agents-cli publish gemini command. Also use when the user wants to \"manage agents in Agent Registry\", \"list\u002Fupdate\u002Fdelete registered agents\", or \"register an MCP server\". Covers ADK vs A2A registration modes, programmatic and interactive usage, flag reference, auto-detection from deployment metadata, Agent Registry fleet management, and troubleshooting. Part of the agents-cli skills suite. Do NOT use for deployment (use google-agents-cli-deploy).","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fagents-cli\u002Fblob\u002Fmain\u002Fsrc\u002Fgoogle\u002Fagents\u002Fcli\u002Fskills\u002Fdata\u002Fgoogle-agents-cli-publish\u002FSKILL.md",[160,161],{"categoryNo":116,"categoryName":117,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[9,35,163,129,53,164,165,42,166,167,168,169,170,50,171,172,44,173,174,175],"google agents cli publish","MCP","programmatic","auto","mcp server","agent registry","server","delete","command","update","suite","fleet","registry",{"skillNo":177,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":178,"categories":179,"keywords":184,"publishedAt":54},"01M6990SFDY0JKXYP921BKRJYE","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fagents-cli\u002Fblob\u002Fmain\u002Fsrc\u002Fgoogle\u002Fagents\u002Fcli\u002Fskills\u002Fdata\u002Fgoogle-agents-cli-observability\u002FSKILL.md",[180,181,182,183],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":27,"categoryName":28,"taxonomyType":29,"taxonomyTypeDesc":30},{"categoryNo":32,"categoryName":33,"taxonomyType":29,"taxonomyTypeDesc":30},[9,35,36,37,53,52,47,48,43,39,42,38,45,40,51,46,49,50,44,41],{"skillNo":186,"name":187,"nameZh":6,"description":188,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":189,"categories":190,"keywords":193,"publishedAt":54},"01M6990PXZ0S6NHYV8PGGVFT6E","google-agents-cli-eval","This skill should be used when the user wants to \"run an evaluation\", \"evaluate my agent\", \"evaluate my ADK agent\", \"write an eval dataset\", \"analyze eval failures\", \"compare eval results\", \"optimize agent\", or needs guidance on the Gemini platform eval methodology and the Quality Flywheel. Covers eval metrics, dataset schema, LLM-as-judge scoring, and common failure causes. Applies to any agents-cli project, whatever framework the agent is written in. Do NOT use for agent API code patterns (ADK: use google-agents-cli-adk-code), deployment (use google-agents-cli-deploy), or project scaffolding (use google-agents-cli-scaffold).","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fagents-cli\u002Fblob\u002Fmain\u002Fsrc\u002Fgoogle\u002Fagents\u002Fcli\u002Fskills\u002Fdata\u002Fgoogle-agents-cli-eval\u002FSKILL.md",[191,192],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":27,"categoryName":28,"taxonomyType":29,"taxonomyTypeDesc":30},[9,35,194,195,53,196,146,197,42,198,40,51,199,46,200,201,202,50,131,203],"google agents cli eval","eval","project scaffolding","scaffolding","dataset","scoring","common","analyze","optimize","write",{"skillNo":205,"name":206,"nameZh":6,"description":207,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":208,"categories":209,"keywords":216,"publishedAt":54},"01M6990MAHH0X6XCNVB74Q67P6","google-agents-cli-deploy","This skill should be used when the user wants to \"deploy an agent\", \"deploy my ADK agent\", \"set up CI\u002FCD\", \"configure secrets\", \"troubleshoot a deployment\", or needs guidance on Agent Runtime, Cloud Run, or GKE deployment targets, or binding an agent to an Agent Gateway. Covers deployment workflows, service accounts, rollback, and production infrastructure. Applies to any framework agents-cli deploys (ADK, LangChain, ...). Part of the agents-cli skills suite. Do NOT use for agent API code patterns (ADK: use google-agents-cli-adk-code), evaluation (use google-agents-cli-eval), or project scaffolding (use google-agents-cli-scaffold).","https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fagents-cli\u002Fblob\u002Fmain\u002Fsrc\u002Fgoogle\u002Fagents\u002Fcli\u002Fskills\u002Fdata\u002Fgoogle-agents-cli-deploy\u002FSKILL.md",[210,213,214,215],{"categoryNo":211,"categoryName":212,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000010","后端与接口",{"categoryNo":116,"categoryName":117,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":27,"categoryName":28,"taxonomyType":29,"taxonomyTypeDesc":30},[9,217,35,218,53,146,147,195,42,219,40,220,131,221,222,223,224,225,226,227],"google agents cli deploy","deploy","workflows","gke","Evaluation","langchain","infrastructure","do","cloud run","for","deployment"]