Skip to main content

Module tap

Module tap 

Source
Expand description

Live event-tap capture for the daemon.

A TapRegistry holds the set of active capture sessions. The engine hot path (LogProcessor::process_batch_with_format) loads the registry once per batch through an ArcSwap and, while at least one session is active, offers each event to the matching sessions with a non-blocking try_send. Delivery never blocks the engine: a full session channel drops the event and bumps a per-session counter, so a slow streaming client can never apply backpressure to detection.

This module only captures and fans events out to bounded per-session channels. Redaction, serialization, and HTTP streaming live in the CLI, so the runtime stays free of the hashing and transport dependencies.

Structs§

TapRegistry
The set of active capture sessions plus the daemon-wide tap limits.
TapSessionHandle
Handle returned to the streaming task on a successful TapRegistry::register. Owns the receiving end of the session channel and deregisters the session from the registry on drop, so a dropped client connection tears the session down automatically and stops the hot path from offering to a dead session.

Enums§

TapPayload
One captured item handed to a session’s streaming task.
TapStage
Which point on the decode path a session captures from.