skillfed

ddapm-test-agent

Test agent for Datadog APM client libraries

ddapm-test-agent v1.65.0 3.3M downloads/30d#2,653 on PyPI82
Permissive license BSD 3 Active released

What it is and what it does

The Datadog APM test agent is a mock server that emulates the endpoints of the production Datadog agent, allowing developers to test APM client libraries in isolation without a running Datadog infrastructure. It listens on configurable ports for HTTP traces (8126), OTLP HTTP (4318), and OTLP gRPC (4317), and provides a web UI for inspecting received traces and managing test sessions.

The agent performs trace invariant checks (trace count headers, tracer version headers, content length validation), stores all submitted data for retrieval via API, and supports snapshot testing for characterization-based regression detection. It can proxy requests to a real Datadog agent or forward LLM observability events directly to Datadog. It also records and replays third-party API calls (OpenAI, Azure OpenAI, DeepSeek) for reproducible testing.

Use it for:

  • Test Datadog APM client libraries locally without deploying a full Datadog agent or cloud infrastructure.
  • Validate trace structure and metadata compliance in integration tests using snapshot testing.
  • Record and replay third-party API interactions (OpenAI, Azure OpenAI, DeepSeek) for deterministic LLM observability testing.
  • Debug trace payload issues by inspecting received requests and trace trees via the web UI.
  • Proxy traces to a real Datadog agent for selective validation while testing client library changes.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Emulates Datadog APM agent endpoints to test Datadog APM client libraries, providing trace validation, snapshot testing, and optional proxying to a real Datadog agent.

Yes. The package is actively maintained, has no known vulnerabilities, and is purpose-built for testing Datadog APM integrations. Install it if you develop or maintain a Datadog APM client library or need to validate trace behavior in CI/CD. The low install friction and permissive license make it a straightforward addition to test infrastructure.

Install

ddapm-test-agent on PyPI

pip

pip install ddapm-test-agent

uv

uv add ddapm-test-agent

poetry

poetry add ddapm-test-agent

Installing ddapm-test-agent

Before you install

Low friction installation with a pure Python wheel. Active maintenance with a release on 2026-08-14. Requires 13 runtime dependencies including aiohttp, protobuf, and grpcio, which are standard libraries for HTTP and gRPC services.

License in practice

BSD 3 permissive license allows use in commercial and open-source projects with minimal restrictions, requiring only preservation of copyright and license notices.

Quickstart

pip install ddapm-test-agent

ddapm-test-agent --port=8126 --otlp-http-port=4318 --otlp-grpc-port=4317 --web-ui-port=8080

Binds to 127.0.0.1 by default; pass --host 0.0.0.0 to accept connections from other hosts.

Verify before relying

  • Whether the Web UI is production-ready or remains experimental in current releases.
  • Performance characteristics when handling high-volume trace payloads or many concurrent sessions.
  • Compatibility with APM client libraries beyond the Datadog ecosystem.

Package facts

License BSD 3 (permissive)
Python support supports the current Python release (>=3.8)
Install friction low — pure-Python wheel
Runtime dependencies 13 — aiohttp, ddsketch, msgpack, requests, typing_extensions, yarl, requests-aws4auth, jinja2, pyyaml, opentelemetry-proto, protobuf, grpcio, pywin32
Maintenance actively maintained — 0 days since the last release
Last repo commit
First released
Downloads 3,346,621/month — #2,653 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: ddapm_test_agent-1.65.0-py3-none-any.whl

Programming Language :: PythonProgramming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13

Tags

datadog apm testingtrace validation testingapm client library testingdatadog agent mocksnapshot testing tracesotlp endpoint testingdistributed trace testing
apm-testingtrace-validationdatadog-integration

More Testing packages

pluggy

Pluggy provides a plugin system that lets you…

permissive · top 100 on PyPI

pytest

pytest is a testing framework that lets you…

permissive · top 100 on PyPI

virtualenv

virtualenv creates isolated Python environments…

permissive · top 100 on PyPI

coverage

Coverage.py measures which lines of Python code…

permissive · top 1,000 on PyPI

pytest-asyncio

pytest-asyncio is a pytest plugin that enables…

permissive · top 1,000 on PyPI

pytest-json-ctrf

A pytest plugin that generates test reports in…

permissive · top 1,000 on PyPI

datadog-checks-base

Provides the Python base classes and utilities…

permissive · top 15,000 on PyPI

dda

dda is a command-line tool for developing on…

permissive · top 15,000 on PyPI

ddtrace

ddtrace instruments Python applications to send…

permissive · top 1,000 on PyPI

scout-apm

Scout APM is a Python application performance…

permissive · top 15,000 on PyPI

claude-tap

claude-tap is a local proxy and trace viewer…

permissive · top 15,000 on PyPI

apm-cli

APM is a dependency manager and configuration…

permissive · top 15,000 on PyPI

opentelemetry-instrumentation-openai-agents

Adds distributed tracing to OpenAI Agents…

permissive · top 5,000 on PyPI

elastic-apm

Elastic APM is the official Python agent for…

permissive · top 5,000 on PyPI

google-python-cloud-debugger

Attaches a snapshot debugger agent to Python…

permissive · top 15,000 on PyPI

openinference-instrumentation-claude-agent-sdk

Auto-instruments Claude Agent SDK calls to emit…

permissive · top 15,000 on PyPI

Further reading