Open-Source Wikis

/

Datadog Agent

/

Datadog Agent

DataDog/datadog-agent

Datadog Agent

The Datadog Agent is the open-source software that runs on customer hosts, containers, and Kubernetes clusters to collect metrics, traces, logs, network data, and security events, then forward them to Datadog. This repository holds the source code of Agent v6 and v7 — the two currently supported major versions — together with the Cluster Agent, the Trace Agent, the System Probe, the Security Agent, the Process Agent, DogStatsD, the Installer, the OpenTelemetry Collector flavor, and several smaller tools that ship alongside the core binary.

What this repository contains

The Datadog Agent is not a single binary. It is a fleet of cooperating processes — most of them written in Go, with eBPF programs in C, a Python check runtime via cgo, the trace agent's protocol buffer definitions, and a small Rust runtime. The same repository builds:

  • The core Agent (cmd/agent/) — collects host metrics, runs Python and Go checks, hosts an HTTP API, and forwards aggregated data to the Datadog backend.
  • DogStatsD (cmd/dogstatsd/, comp/dogstatsd/) — a StatsD server that accepts custom application metrics over UDP/UDS/named pipe and ships them to the aggregator.
  • The Trace Agent (cmd/trace-agent/, pkg/trace/) — receives APM traces from instrumented applications, samples them, computes RED stats, and forwards both to Datadog.
  • The System Probe (cmd/system-probe/, pkg/network/, pkg/ebpf/) — runs as a privileged process and uses eBPF to collect network, USM, kernel, and GPU telemetry.
  • The Security Agent (cmd/security-agent/, pkg/security/) — drives Cloud Workload Security (CWS) runtime detections and Cloud Security Posture Management (CSPM) compliance benchmarks.
  • The Cluster Agent (cmd/cluster-agent/, pkg/clusteragent/) — provides cluster-level orchestration metrics, External Metrics Provider, admission controller, and cluster checks dispatching for Kubernetes.
  • The Process Agent (cmd/process-agent/) — collects process and container metadata.
  • The Datadog Installer (cmd/installer/, pkg/fleet/) — manages remote-controlled Agent installation, upgrades, and configuration.
  • Serverless and OpenTelemetry flavors (cmd/serverless-init/, cmd/otel-agent/) — variants tailored for serverless runtimes and OTel-based deployments.

For a longer list and per-binary details, see Apps.

Reading guide

If you are… Start with
New contributor setting up the repo Getting started
Trying to understand the high-level layout Architecture
Looking up a project-specific term Glossary
Working on a specific binary Apps
Working on shared infrastructure Systems
Tracing a feature end-to-end Features
Curious about repo size and history By the numbers, Lore
About to open a PR How to contribute

External documentation

The Datadog Agent has long-form documentation outside this wiki:

  • User documentation — the polished, customer-facing manual at docs.datadoghq.com.
  • Developer documentation — the developer site, generated from docs/public/.
  • AGENTS.md — repo-wide coding context for AI assistants. Many of its conventions are echoed in this wiki.

License

User-space components are licensed under Apache License 2.0. The eBPF C code under pkg/ebpf/c/ is licensed under GPLv2 because the kernel verifier requires GPL-compatible licenses for many helpers.

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

Datadog Agent – Datadog Agent wiki | Factory