extractResponseInfo 从响应 Metadata 中提取响应信息
(span telemetry.Span, metadata map[string]any)
| 331 | |
| 332 | // extractResponseInfo 从响应 Metadata 中提取响应信息 |
| 333 | func (m *TelemetryMiddleware) extractResponseInfo(span telemetry.Span, metadata map[string]any) { |
| 334 | if responseID, ok := metadata["response_id"].(string); ok { |
| 335 | span.SetAttributes(telemetry.String(genai.AttrResponseID, responseID)) |
| 336 | } |
| 337 | |
| 338 | if responseModel, ok := metadata["model"].(string); ok { |
| 339 | span.SetAttributes(telemetry.String(genai.AttrResponseModel, responseModel)) |
| 340 | } |
| 341 | |
| 342 | if finishReason, ok := metadata["finish_reason"].(string); ok { |
| 343 | span.SetAttributes(telemetry.String(genai.AttrResponseFinishReason, finishReason)) |
| 344 | } else if stopReason, ok := metadata["stop_reason"].(string); ok { |
| 345 | span.SetAttributes(telemetry.String(genai.AttrResponseFinishReason, stopReason)) |
| 346 | } |
| 347 | } |
| 348 | |
| 349 | // setErrorTypeAttribute 设置错误类型属性 |
| 350 | func (m *TelemetryMiddleware) setErrorTypeAttribute(span telemetry.Span, err error) { |
no test coverage detected