getsentry / getsentry/sentry-python

Instrument Live/Streaming API (`client.aio.live`)

Abierto
#5,828 1 comentario 0 reacciones 0 asignados Ver en GitHub
Improvement Python Spans
Lenguaje dominante
Python
Estrellas
2.2k
Forks
669
Merge medio
1 d 1 h
PR fusionados (30 d)
213

Descripción

## Problem

The real-time multimodal API (`client.aio.live`) is not instrumented. This is an async-only API with complex bidirectional streaming:

* `AsyncLive.connect(model, config)` — async context manager yielding `AsyncSession`
* `AsyncSession.send_client_content()` — non-realtime turn-based content
* `AsyncSession.send_realtime_input()` — realtime audio/video/text streaming
* `AsyncSession.send_tool_response()` — tool call responses
* `AsyncSession.receive()` — async iterator of server messages
* `AsyncLiveMusic` — music generation sub-API

## Complexity

This is the most complex API to instrument due to its bidirectional streaming nature. May require a different instrumentation approach than request/response spans.

## Files

* `sentry_sdk/integrations/google_genai/__init__.py` — `setup_once()` needs additional patches

## Acceptance Criteria

* Live API sessions produce spans capturing model, connection lifecycle, and errors
* Tool responses within live sessions are tracked
* Tests verify basic span creation for live sessions

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.