Skip to content

Achieve parity for OTel samples in all languages #577

@ceciliaavila

Description

@ceciliaavila

Description

Analysis of the three OpenTelemetry samples to align them on features, style, README structure, and consistency.

Feature .NET Python Node.js
Use case Echo agent + OTel Echo agent + OTel Echo agent + OTel
Welcome message "Hello and Welcome!" "Welcome to the empty agent! …" ⚠️ "Hello and Welcome!" ✅
Echo message "You said: {text}" ✅ "you said: {text}" ⚠️ lowercase "You said now: {text}" ⚠️ extra "now"
Error handler (implicit) Explicit @on_error (implicit)
Outbound HTTP call demo ✅ (fetch bing.com)
Custom spans in handlers
Custom span events
Custom metrics (counter/histogram)
Traces ASP.NET Core + HttpClient + Agents SDK aiohttp server + client + requests NodeSDK (no explicit auto-instrumentation)
Metrics ASP.NET Core + HttpClient + runtime + Agents SDK PeriodicExportingMetricReader PeriodicExportingMetricReader
Logs ILogger → OTLP Python logging → OTLP BatchLogRecordProcessor → OTLP
Span processor Batch ✅ Simple ⚠️ Batch ✅
Agents SDK telemetry source
Console fallback (no endpoint)
Azure Monitor support ✅ (commented block)
Auth approach Custom in-sample (~270 lines) ⚠️ SDK middleware (1 line) ✅ SDK built-in (0 lines) ✅
Auth disabled for local dev
Gov cloud support ❓ (SDK) ❓ (SDK)
JWT Token Validation in README
env.TEMPLATE / config file appsettings.json env.TEMPLATE ⚠️ (incomplete) env.TEMPLATE ✅
OTLP endpoint configurable ✅ (missing from template ⚠️)
Metrics/logs export interval config
Service name AgentsTelemetry.SourceName (SDK) "otel_quickstart_agent" (hardcoded) "OTelAgent" (hardcoded)
Dashboard setup Docker in README start_dashboard.ps1 script Docker in README
Dashboard version pinned latest latest 9.2 (pinned) ⚠️
Dev tunnel instructions
Agents Playground instructions
WebChat access instructions
"Viewing Telemetry" section in README
OTel signals table in README
Azure Monitor section in README
Deploy to Azure instructions
Separate server entry point ✅ Program.cs ✅ main.py ❌ (mixed in agent.ts)

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions