Tracing Azure CLI Copilot end to end
At Microsoft, I built multi-handler telemetry and one filterable dashboard for investigating reliability, performance, and cost across environments and deployments.
- Contribution
- Microsoft · Observability + telemetry
- Period
- Dec 2025 — Feb 2026
- Stack
- Python, OpenTelemetry, Grafana
- Delivery
- Released to UAT
One trace across the workflow.
Consistent signals follow AI-assisted commands across multiple tool handlers before reaching one operational view.
- CommandAI-assisted CLI workflowThe investigation begins at the user action.
- HandlersMultiple AI tool handlersOne trace preserves context across the workflow.
- InstrumentationPython + OpenTelemetryConsistent spans carry the operational signals.
- Operational viewFilterable Grafana dashboardEnvironment and deployment remain filterable.
- DeliveryPull request + CI → UATThe work moved through the normal release path.
The operational gap
Ordinary logs could not cleanly explain a multi-handler AI workflow. The useful questions crossed component boundaries.
- Where did the workflow spend time?
- How did model use affect cost?
- Did the response remain useful?
- What changed across handlers and deployments?
Signals that made those questions answerable.
- Latency
- Where the workflow spends time
- Token use
- Model usage and cost signals
- Errors + outcomes
- Failure and completion states
- Response quality
- Whether the result remains useful
From instrumentation to UAT.
I implemented end-to-end Python and OpenTelemetry tracing, then carried it through review and release.
- ImplementMulti-handler tracing
- ReviewPull request
- VerifyContinuous integration
- ReleaseUser acceptance testing
One filterable dashboard brought reliability, performance, quality, and cost analysis into a unified operational view across environments and deployments.