Skip to main content
The collector captures kernel-level telemetry (file access, process execution, network flows) via eBPF. On a busy host, raw syscall volume can exceed 100k events/second, the vast majority of which is OS housekeeping noise with low governance value. The filtering system reduces this to a manageable stream of security-relevant events through a two-tier architecture.

Architecture overview

Events that survive both tiers are serialized and either written to disk or shipped to the ingest endpoint.

What gets filtered

The filtering pipeline removes events that have no governance or security value:

Repeat-read coalescing

On container-dense hosts most shipped volume is the same process re-reading the same file. The collector deduplicates these: a successful, read-only open of a path already reported by the same process instance within the coalescing window (default 60 seconds) is not re-shipped. The first open of every distinct (process, file) pair always ships with its original timestamp — coalescing removes repeats of an already-reported access, never an access edge itself. Never coalesced: write opens, failed opens (access attempts), sensitive-path reads (credentials, tokens, secrets — including customer-defined sensitive paths and detection-critical files such as /etc/shadow and /etc/sudoers), anything under /home, /root, or removable/network-share mounts, and network/exec/process events (which are never subject to any volume reduction). Three additional fidelity guards: after a process writes any file, its subsequent reads ship per-row again (so read-copy-read sequences keep full evidence); a file replaced at the same path is treated as new (inode identity is part of the deduplication key); and an event dropped under queue backpressure never arms the window, so retries remain independent. A keepalive re-emits one coalesced event if the host has been otherwise silent, so quiet hosts never appear offline. On Kubernetes workers this typically removes 30–60% of shipped rows with no loss of distinct access edges.

What is never filtered

Certain event categories bypass all filtering regardless of source:
  • All process executions: the collector always records what was executed, even from filtered processes
  • All write operations: file writes to any path are always security-relevant
  • Container lifecycle events: required for maintaining container identity mapping
  • Sensitive path access: reads of credential files, tokens, secrets, and security-relevant configuration are preserved even from infrastructure processes

Filtering behavior guarantees

Opt-in content inspection (DAG_CONTENT_INSPECT) is a separate capture path after a public DATA_FLOW; it does not change how events are filtered. See Data handling.

Metrics and observability

The collector tracks filter hit rates and reports them periodically: On shutdown, a summary is printed:

Configuration

Coalescing is disabled automatically under DAG_STRICT_SENSITIVE_CAPTURE=1 (strict sensitive capture) and when a configured local sensitive-path file is missing or invalid (fail-closed), the same gates that govern sampling. The built-in noise filters are compiled into the collector and are not user-configurable. They target well-known system paths and infrastructure processes that generate high volume with no security signal.
Last modified on October 8, 2026