Open-Source Wikis

/

Datadog Agent

/

Packages

/

Components overview

DataDog/datadog-agent

Components overview

A walkthrough of the bundles in comp/. New code is expected to live here. The framework itself is documented in Systems: Components framework; this page is the catalog.

The auto-generated comp/README.md is the canonical, always-up-to-date index — it is regenerated by dda inv collector.generate from package docstrings. This page summarizes the major bundles.

Foundation bundles

Bundle Purpose
comp/core The "everyone needs this" bundle. Config, log, secrets, hostname, IPC, status, flare, healthprobe, tagger, workloadmeta, autodiscovery, agent telemetry.
comp/api The Agent's HTTP and gRPC API server.
comp/def Shared component-framework primitives (lifecycle interfaces, etc.).

comp/core is the largest bundle in the repository and includes most "infrastructure" components. Everything in it has been migrated from a legacy pkg/ location at some point.

Data-plane bundles

Bundle Purpose
comp/aggregator Demultiplexer (the entrypoint to the aggregator).
comp/collector Check runtime (delegates to pkg/collector).
comp/serializer Payload serializers (metrics, sketches, logs, events).
comp/forwarder HTTP forwarder, event-platform forwarder, orchestrator forwarder, connections forwarder.
comp/dogstatsd DogStatsD listeners and packet pipeline.
comp/logs Logs agent, audit, integration glue.
comp/logs-library Subset of the logs pipeline reusable outside the agent.
comp/trace Embedded trace agent (the in-process variant).
comp/trace-telemetry Trace-agent self-telemetry.
comp/process Process Agent core.

These bundles are where the Agent's day-to-day pipelines live (or the wrappers around them, in the cases that still delegate to pkg/).

Metadata, telemetry, and status

Bundle Purpose
comp/metadata Inventory of agent, checks, integrations, host, GPU, container metadata.
comp/agent The "agent agent" bundle that owns auto-exit, expvar server, and JMX logger.
comp/dataobs Data observability (query actions).
comp/fleetstatus Fleet Automation status.

Network and infrastructure monitoring

Bundle Purpose
comp/snmpscan, comp/snmpscanmanager SNMP scanning.
comp/snmptraps SNMP trap reception.
comp/networkdeviceconfig Network device configuration backups.
comp/netflow NetFlow ingestion.
comp/networkpath Network Path (traceroute) component.
comp/ndmtmp NDM trap & metric forwarding.
comp/rdnsquerier Reverse DNS query helper.
comp/connectivitychecker Datadog connectivity self-tests.

Security, autoscaling, HA, OTel

Bundle Purpose
comp/checks Component-based checks (Windows event log, agent crash detect, win registry).
comp/autoscaling Cluster Agent autoscaling.
comp/haagent High-availability Agent.
comp/otelcol OTel Collector flavor and converter.
comp/etw Windows ETW helpers.
comp/filterlist Filter list maintenance.
comp/healthplatform Health Platform integration.
comp/host-profiler Host profiler component.
comp/languagedetection Workload language detection.
comp/logonduration Logon duration metrics (Windows).
comp/notableevents Notable events ingestion.
comp/offlinereporter Offline / disk-buffered reporting.
comp/publishermetadatacache Publisher metadata cache.
comp/remote-config Remote Config client and service.
comp/softwareinventory Software inventory tracking.
comp/syntheticstestscheduler Synthetics test scheduler.
comp/systray Windows system tray.
comp/updater Agent self-update.
comp/workloadselection Workload selection.
comp/privateactionrunner Private action runner.

Dev / glue bundles

Bundle Purpose
comp/agent Auto-exit, expvar server, jmxlogger.
comp/serializer/logscompression, comp/serializer/metricscompression Compression algorithms.

Naming patterns

Components inside a bundle typically follow this layout:

comp/<bundle>/<component>/
├── def/         # Interface
├── impl/        # Production implementation
├── fx/          # Fx wiring
└── mock/        # Test mock

Some components have multiple implementations:

  • impl-none / fx-noop for stripped builds.
  • impl-mrf for Multi-Region Failover variants.
  • impl-windows / fx-windows for OS-specific implementations.

How to use this catalog

When working on a feature, start by finding the relevant bundle. comp/README.md (the auto-generated one in the repo, not this wiki) lists every component with a one-line description and the team that owns it. Use it as the source of truth; this page is a higher-level orientation.

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

Components overview – Datadog Agent wiki | Factory