Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

.NET: Workflows: the span tag `message.type` collides with the obsoleted OpenTelemetry RPC attribute of the same name

Đang mở
#9,252 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
2/5
Thời gian dự kiến
1-3 giờ
Mức phù hợp với người mới
55/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
csharp
Lĩnh vực
observability

Hướng nghiên cứu

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.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

.NET triage
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:20 declares message.type.
  • dotnet/src/Microsoft.Agents.AI.Workflows/Observability/WorkflowTelemetryContext.cs:146 sets it on executor.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.

Ngôn ngữ chính
Python
Star
14k
Fork
2.5k
Merge trung bình
1 ngày 20 giờ
Pull request đã merge (30 ngày)
370

Chuẩn bị môi trường

Mở trong Codespaces

Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của microsoft/agent-framework

Tất cả issue của microsoft/agent-framework

Issue tương tự

Thêm issue về Python

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.