@@ -844,7 +844,11 @@ def _on_turn_end(self, event: TurnEndEvent) -> None:
844844 # "error", mark turn ERROR. Abort path leaves UNSET + sets
845845 # cubepi.aborted on the invoke_agent root.
846846 if stop_reason == "error" :
847- err_msg = getattr (msg , "error_message" , None ) or "model error"
847+ err_msg = (
848+ getattr (msg , "error_message" , None ) or "model error"
849+ if self ._record_content
850+ else "model error"
851+ )
848852 run .turn_span .set_status (Status (StatusCode .ERROR , err_msg [:256 ]))
849853 run .turn_span .set_attribute (ERROR_TYPE , "cubepi.error" )
850854 elif stop_reason == "aborted" :
@@ -1267,17 +1271,24 @@ def _on_provider_response(
12671271 span .set_attribute (CUBEPI_ABORTED , True )
12681272 span .set_attribute (ERROR_TYPE , "cubepi.aborted" )
12691273 else :
1270- span .set_status (Status (StatusCode .ERROR , str (exc )[:256 ]))
1274+ description = (
1275+ str (exc )[:256 ] if self ._record_content else "provider error"
1276+ )
1277+ span .set_status (Status (StatusCode .ERROR , description ))
12711278 span .set_attribute (ERROR_TYPE , cubepi_error_type_for (exc ))
1279+ exception_attrs = {"exception.type" : type (exc ).__name__ }
1280+ if self ._record_content :
1281+ exception_attrs .update (
1282+ {
1283+ "exception.message" : str (exc ),
1284+ "exception.stacktrace" : "" .join (
1285+ traceback .format_exception (exc )
1286+ ),
1287+ }
1288+ )
12721289 span .add_event (
12731290 name = EVENT_GEN_AI_EXCEPTION ,
1274- attributes = {
1275- "exception.type" : type (exc ).__name__ ,
1276- "exception.message" : str (exc ),
1277- "exception.stacktrace" : "" .join (
1278- traceback .format_exception (exc )
1279- ),
1280- },
1291+ attributes = exception_attrs ,
12811292 )
12821293 finally :
12831294 span .end ()
0 commit comments