diff --git a/sidecar/src/Aryx.AgentHost/Services/OpenTelemetrySetup.cs b/sidecar/src/Aryx.AgentHost/Services/OpenTelemetrySetup.cs
index bd781ac..cb03e88 100644
--- a/sidecar/src/Aryx.AgentHost/Services/OpenTelemetrySetup.cs
+++ b/sidecar/src/Aryx.AgentHost/Services/OpenTelemetrySetup.cs
@@ -14,7 +14,7 @@ internal static class OpenTelemetrySetup
private static readonly string[] ActivitySourceNames =
[
- "Microsoft.Agents.AI",
+ "Experimental.Microsoft.Agents.AI",
"Microsoft.Agents.AI.Workflows",
];
diff --git a/sidecar/src/Aryx.AgentHost/Services/Providers/Copilot/CopilotAgentBundle.cs b/sidecar/src/Aryx.AgentHost/Services/Providers/Copilot/CopilotAgentBundle.cs
index 9f1c207..ccfc4ab 100644
--- a/sidecar/src/Aryx.AgentHost/Services/Providers/Copilot/CopilotAgentBundle.cs
+++ b/sidecar/src/Aryx.AgentHost/Services/Providers/Copilot/CopilotAgentBundle.cs
@@ -87,8 +87,13 @@ internal sealed class CopilotAgentBundle : ProviderAgentBundle
name: definition.GetAgentName(),
description: NormalizeOptionalString(definition.Config.Description));
- agents.Add(agent);
+ AIAgent instrumentedAgent = new AIAgentBuilder(agent).UseOpenTelemetry().Build();
+ agents.Add(instrumentedAgent);
disposables.Add(agent);
+ if (instrumentedAgent is IDisposable instrumentedDisposable)
+ {
+ disposables.Add(new SyncDisposableAdapter(instrumentedDisposable));
+ }
}
// The bundle owns the shared client — disposed after all agents.
@@ -328,4 +333,17 @@ internal sealed class CopilotAgentBundle : ProviderAgentBundle
{
return string.IsNullOrWhiteSpace(value) ? null : value.Trim();
}
+
+ ///
- Use bun run aspire to launch the Aspire Dashboard locally at this default endpoint. - Changes take effect on the next sidecar session. + The URL of any OTLP-compatible collector (e.g. Jaeger, Aspire Dashboard, Grafana Alloy). + Changes take effect on the next session.