Description
The record configuration passed to session.start() is not respecting partial observability settings. When enabling/disabling individual observability options (audio, traces, logs, transcript), the behaviour does not match the configured values. Currently i have just enabled audio as i have ran out of inclusive credits of others.
Current implementation
await session.start(
agent=starting_agent,
room=ctx.room,
room_options=room_io.RoomOptions(
audio_input=room_io.AudioInputOptions(
noise_cancellation=(
lambda params: (
(
None
if params.participant.kind
== rtc.ParticipantKind.PARTICIPANT_KIND_AGENT
else ctx.proc.userdata[ProcessKey.ENHANCER]
)
if settings.LIVEKIT_NOISE_CANCELLATION_ENABLED
else None
)
),
),
close_on_disconnect=False,
delete_room_on_close=True,
),
capture_run=True,
record={
"audio": settings.LIVEKIT_OBSERVABILITY_AUDIO, // its true
"traces": settings.LIVEKIT_OBSERVABILITY_TRACES,
"logs": settings.LIVEKIT_OBSERVABILITY_LOGS,
"transcript": settings.LIVEKIT_OBSERVABILITY_TRANSCRIPT,
},
)
Expected behaviour
The observability configuration should support partial enabling:
Example:
{
"audio": True,
"traces": False,
"logs": False,
"transcript": False
}
Expected:
- Audio recording should be enabled
- Logs should not be captured
- Traces should not be captured
- Transcript should not be captured
Actual behaviour
Changing individual flags does not correctly affect captured observability data. The agent session appears to either:
- Ignore enabled fields in the
recordconfiguration.
Environment
- LiveKit Agents SDK with version
“livekit-agents>=1.6.4”,
“livekit-api>=1.1.1”,
session.start()withcapture_run=True- Custom
recordobservability configuration
Impact
Cannot selectively control observability collection. This prevents disabling specific data types (for example transcript/audio) while keeping required debugging data such as traces and logs.
Expected fix
record options should be applied independently and respect each boolean configuration value.
EDIT: Agent obeservability setting is enabled in livekit dashboard. Agent is deployed in livekit cloud
