1919
2020from agentkit .apps .agent_server_app .telemetry import telemetry
2121
22-
23- trace_paths = ["/run_sse" , "/run" , "/invoke" ]
22+ _EXCLUDED_HEADERS = {
23+ "authorization" ,
24+ "token"
25+ }
2426
2527
2628class AgentkitTelemetryHTTPMiddleware :
@@ -36,19 +38,23 @@ async def __call__(self, scope, receive, send):
3638 path = scope .get ("path" , "" )
3739 headers_list = scope .get ("headers" , [])
3840 headers = {k .decode ("latin-1" ): v .decode ("latin-1" ) for k , v in headers_list }
39-
4041 span = telemetry .tracer .start_span (name = "agent_server_request" )
4142 ctx = trace .set_span_in_context (span )
4243 context_api .attach (ctx )
44+ headers = {
45+ k : v for k , v in headers .items ()
46+ if k .lower () not in _EXCLUDED_HEADERS
47+ }
4348
49+ # Currently unable to retrieve user_id and session_id from headers; keep logic for future use
4450 user_id = headers .get ("user_id" ) or headers .get ("x-user-id" ) or ""
4551 session_id = headers .get ("session_id" ) or headers .get ("x-session-id" ) or ""
46- headers_like = { "user_id" : user_id , "session_id" : session_id }
47-
52+ headers [ "user_id" ] = user_id
53+ headers [ "session_id" ] = session_id
4854 telemetry .trace_agent_server (
4955 func_name = f"{ method } { path } " ,
5056 span = span ,
51- headers = headers_like ,
57+ headers = headers ,
5258 text = "" , # do not consume body in middleware
5359 )
5460
@@ -58,7 +64,7 @@ async def send_wrapper(message):
5864 more_body = message .get ("more_body" , False )
5965 if not more_body :
6066 telemetry .trace_agent_server_finish (
61- func_result = "" , exception = None
67+ path = path , func_result = "" , exception = None
6268 )
6369 elif message .get ("type" ) == "http.response.start" :
6470 # could record status code if needed
@@ -69,5 +75,5 @@ async def send_wrapper(message):
6975 try :
7076 await self .app (scope , receive , send_wrapper )
7177 except Exception as e :
72- telemetry .trace_agent_server_finish (func_result = "" , exception = e )
78+ telemetry .trace_agent_server_finish (path = path , func_result = "" , exception = e )
7379 raise
0 commit comments