.NET: Workflows: the span tag `message.type` collides with the obsoleted OpenTelemetry RPC attribute of the same name
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 55/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- csharp
- Área
- observability
Línea de trabajo
The tag name is declared in dotnet/src/Microsoft.Agents.AI.Workflows/Observability/Tags.cs around line 20, and it is set on the executor.process span in WorkflowTelemetryContext.cs around line 146. Start there, then search the .NET tests for the literal message.type to find assertions that also need updating. Done means the tag uses a library-owned name such as executor.message.type, every reference and test uses it, and the new name is confirmed with a maintainer first.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Summary
Microsoft.Agents.AI.Workflows sets the span tag message.type to the .NET type name of the message being processed. message.type is a registered OpenTelemetry semantic-convention attribute: the RPC message-event key with the enum values SENT / RECEIVED, deprecated as obsoleted in semantic-conventions 1.44.0 (model/rpc/deprecated/registry-deprecated.yaml). A registry-driven pipeline therefore treats the workflow tag as the obsoleted RPC key: Weaver live-check reports it as a deprecated attribute carrying a value outside its enum, and a collector that follows the registry drops it. The message type never reaches a backend.
Where (tag dotnet-1.24.0)
dotnet/src/Microsoft.Agents.AI.Workflows/Observability/Tags.cs:20declaresmessage.type.dotnet/src/Microsoft.Agents.AI.Workflows/Observability/WorkflowTelemetryContext.cs:146sets it onexecutor.process.
Why only this tag
The other workflow tags live in namespaces upstream does not define (workflow.*, executor.*, edge_group.*, message.content, message.source_id, message.target_id), so a downstream registry can declare them as library-owned keys and pass them through. message.type is the one tag that cannot be declared, because the catalog already carries the upstream key of that name with a different meaning. (session.id, error.type and error.message also collide, but their meaning matches upstream's, so they pass as the upstream keys.)
Ask
Give the tag a library-owned name, for example executor.message.type or workflow.message.type, the way the executor and edge-group tags already are. Longer term, prefixing all of message.* (workflow.message.*) would keep the library clear of the deprecated RPC message.* keys entirely.
Context
We maintain a Weaver registry that layers the GenAI conventions and library-owned keys for .NET instrumentation, and declare the workflow tags there as pass-through keys: https://github.com/ANcpLua/Qyl.OpenTelemetry.SemanticConventions/blob/main/registry/vendor/microsoft-agents-ai-workflows.yaml. Happy to send a PR for the rename if the direction is agreed.
- Lenguaje dominante
- Python
- Estrellas
- 14k
- Forks
- 2.5k
- Merge medio
- 2 d 4 h
- PR fusionados (30 d)
- 403
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de microsoft/agent-framework
-
Python: [Bug]: Out-of-range Cosmos memory search parameters silently disable retrievalPosiblemente ocupada @eavanvalkenburg la tomó hace 1 día. Abiertopython
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
microsoft/agent-framework#9317 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Python: [Bug]: A non-positive MCP request timeout silently disables the timeoutPosiblemente ocupada @jpalvarezl la tomó hace 1 día. Abiertopython
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
microsoft/agent-framework#9313 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Python: [Bug]: Content.from_dict leaves the nested content of image generation and MCP server tool results as plain dictsPosiblemente ocupada @eavanvalkenburg la tomó hace 1 día. Abiertopython
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
microsoft/agent-framework#9303 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
.NET: Proposal: add an llms.txtAbierto.NET python triage
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
microsoft/agent-framework#9092 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Python: raw-data content mappings lose annotations and attachment metadataPosiblemente ocupada @moonbox3 la tomó hace 14 días. Abiertopython triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
microsoft/agent-framework#8632 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de microsoft/agent-framework
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
onyx-dot-app/onyx#16016 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
black --check exits 0 and prints All done when a multi file run is interruptedPosiblemente ocupada @jiteshgulati la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 2 días
-
Non-positive worker counts wait for results without starting workersPosiblemente ocupada @IlyaKhalafi la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día