Observers
Debug Log Observer
Comprehensive frame logging with configurable filtering in Pipecat
The DebugLogObserver
provides detailed logging of frame activity in your Pipecat pipeline, with full visibility into frame content and flexible filtering options.
Features
- Log all frame types and their content
- Filter by specific frame types
- Filter by source or destination components
- Automatic formatting of frame fields
- Special handling for complex data structures
Usage
Log All Frames
Log all frames passing through the pipeline:
Filter by Frame Types
Log only specific frame types:
Advanced Source/Destination Filtering
Filter frames based on their type and source/destination:
Log Output Format
The observer logs each frame with its complete details:
For example:
Configuration Options
Parameter | Type | Description |
---|---|---|
frame_types | Tuple[Type[Frame], ...] or Dict[Type[Frame], Optional[Tuple[Type, FrameEndpoint]]] | Frame types to log, with optional source/destination filtering |
exclude_fields | Set[str] | Field names to exclude from logging (defaults to binary fields) |
FrameEndpoint Enum
The FrameEndpoint
enum is used for source/destination filtering:
FrameEndpoint.SOURCE
: Filter by source componentFrameEndpoint.DESTINATION
: Filter by destination component