getsentry / getsentry/sentry-python

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

Ouverte
#5,828 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub
Improvement Python Spans
Langage dominant
Python
Étoiles
2.2k
Forks
669
Merge moyen
1 j 1 h
PR mergées (30 j)
213

Description

## 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

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.