Skip to content

Commit 81b234a

Browse files
add agent version
1 parent 6d2e789 commit 81b234a

File tree

6 files changed

+20
-0
lines changed

6 files changed

+20
-0
lines changed

libraries/microsoft-agents-a365-observability-core/microsoft_agents_a365/observability/core/agent_details.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,3 +38,6 @@ class AgentDetails:
3838

3939
provider_name: Optional[str] = None
4040
"""The provider name (e.g., openai, anthropic)."""
41+
42+
agent_version: Optional[str] = None
43+
"""Optional version of the agent (e.g., "1.0.0", "2025-05-01")."""

libraries/microsoft-agents-a365-observability-core/microsoft_agents_a365/observability/core/constants.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@
3838
GEN_AI_AGENT_ID_KEY = "gen_ai.agent.id"
3939
GEN_AI_AGENT_NAME_KEY = "gen_ai.agent.name"
4040
GEN_AI_AGENT_DESCRIPTION_KEY = "gen_ai.agent.description"
41+
GEN_AI_AGENT_VERSION_KEY = "gen_ai.agent.version"
4142
GEN_AI_AGENT_PLATFORM_ID_KEY = "microsoft.a365.agent.platform.id"
4243
GEN_AI_AGENT_THOUGHT_PROCESS_KEY = "microsoft.a365.agent.thought.process"
4344
GEN_AI_CONVERSATION_ID_KEY = "gen_ai.conversation.id"
@@ -73,6 +74,7 @@
7374
GEN_AI_CALLER_AGENT_ID_KEY = "microsoft.a365.caller.agent.id"
7475
GEN_AI_CALLER_AGENT_APPLICATION_ID_KEY = "microsoft.a365.caller.agent.blueprint.id"
7576
GEN_AI_CALLER_AGENT_PLATFORM_ID_KEY = "microsoft.a365.caller.agent.platform.id"
77+
GEN_AI_CALLER_AGENT_VERSION_KEY = "microsoft.a365.caller.agent.version"
7678

7779
# Agent-specific dimensions
7880
AGENT_ID_KEY = "gen_ai.agent.id"

libraries/microsoft-agents-a365-observability-core/microsoft_agents_a365/observability/core/invoke_agent_scope.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
GEN_AI_CALLER_AGENT_NAME_KEY,
1818
GEN_AI_CALLER_AGENT_PLATFORM_ID_KEY,
1919
GEN_AI_CALLER_AGENT_USER_ID_KEY,
20+
GEN_AI_CALLER_AGENT_VERSION_KEY,
2021
GEN_AI_CALLER_CLIENT_IP_KEY,
2122
GEN_AI_CONVERSATION_ID_KEY,
2223
GEN_AI_INPUT_MESSAGES_KEY,
@@ -162,6 +163,10 @@ def __init__(
162163
GEN_AI_CALLER_AGENT_PLATFORM_ID_KEY,
163164
caller_agent_details.agent_platform_id,
164165
)
166+
self.set_tag_maybe(
167+
GEN_AI_CALLER_AGENT_VERSION_KEY,
168+
caller_agent_details.agent_version,
169+
)
165170

166171
def record_response(self, response: str) -> None:
167172
"""Record response information for telemetry tracking.

libraries/microsoft-agents-a365-observability-core/microsoft_agents_a365/observability/core/middleware/baggage_builder.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
GEN_AI_AGENT_EMAIL_KEY,
1818
GEN_AI_AGENT_ID_KEY,
1919
GEN_AI_AGENT_NAME_KEY,
20+
GEN_AI_AGENT_VERSION_KEY,
2021
GEN_AI_CALLER_CLIENT_IP_KEY,
2122
GEN_AI_CONVERSATION_ID_KEY,
2223
GEN_AI_CONVERSATION_ITEM_LINK_KEY,
@@ -154,6 +155,11 @@ def agent_description(self, value: str | None) -> "BaggageBuilder":
154155
self._set(GEN_AI_AGENT_DESCRIPTION_KEY, value)
155156
return self
156157

158+
def agent_version(self, value: str | None) -> "BaggageBuilder":
159+
"""Set the agent version baggage value."""
160+
self._set(GEN_AI_AGENT_VERSION_KEY, value)
161+
return self
162+
157163
def user_name(self, value: str | None) -> "BaggageBuilder":
158164
"""Set the user name baggage value."""
159165
self._set(USER_NAME_KEY, value)

libraries/microsoft-agents-a365-observability-core/microsoft_agents_a365/observability/core/opentelemetry_scope.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
GEN_AI_AGENT_ID_KEY,
3434
GEN_AI_AGENT_NAME_KEY,
3535
GEN_AI_AGENT_PLATFORM_ID_KEY,
36+
GEN_AI_AGENT_VERSION_KEY,
3637
GEN_AI_ICON_URI_KEY,
3738
GEN_AI_OPERATION_NAME_KEY,
3839
GEN_AI_OUTPUT_MESSAGES_KEY,
@@ -178,6 +179,7 @@ def __init__(
178179
self.set_tag_maybe(
179180
GEN_AI_AGENT_DESCRIPTION_KEY, agent_details.agent_description
180181
)
182+
self.set_tag_maybe(GEN_AI_AGENT_VERSION_KEY, agent_details.agent_version)
181183
self.set_tag_maybe(GEN_AI_AGENT_AUID_KEY, agent_details.agentic_user_id)
182184
self.set_tag_maybe(GEN_AI_AGENT_EMAIL_KEY, agent_details.agentic_user_email)
183185
self.set_tag_maybe(

libraries/microsoft-agents-a365-observability-core/microsoft_agents_a365/observability/core/trace_processor/util.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
consts.GEN_AI_AGENT_ID_KEY, # gen_ai.agent.id
1515
consts.GEN_AI_AGENT_NAME_KEY, # gen_ai.agent.name
1616
consts.GEN_AI_AGENT_DESCRIPTION_KEY, # gen_ai.agent.description
17+
consts.GEN_AI_AGENT_VERSION_KEY, # gen_ai.agent.version
1718
consts.GEN_AI_AGENT_EMAIL_KEY, # microsoft.agent.user.email
1819
consts.GEN_AI_AGENT_BLUEPRINT_ID_KEY, # microsoft.a365.agent.blueprint.id
1920
consts.GEN_AI_AGENT_AUID_KEY, # microsoft.agent.user.id
@@ -41,6 +42,7 @@
4142
consts.GEN_AI_CALLER_AGENT_EMAIL_KEY, # microsoft.a365.caller.agent.user.email
4243
consts.GEN_AI_CALLER_AGENT_APPLICATION_ID_KEY, # microsoft.a365.caller.agent.blueprint.id
4344
consts.GEN_AI_CALLER_AGENT_PLATFORM_ID_KEY, # microsoft.a365.caller.agent.platform.id
45+
consts.GEN_AI_CALLER_AGENT_VERSION_KEY, # microsoft.a365.caller.agent.version
4446
# Server address/port for invoke agent target
4547
consts.SERVER_ADDRESS_KEY, # server.address
4648
consts.SERVER_PORT_KEY, # server.port

0 commit comments

Comments
 (0)