Datadog Agent Version 5
Switch branches/tags
Clone or download
Failed to load latest commit information.
.github [integrations] [core] removes final checks and tests (#3215) Feb 24, 2017
checks Fix proxy formating when user or password aren't set Aug 20, 2018
ci run cassandra tests with the agent May 15, 2018
conf.d [conf][skip ci] adding canonical_rate to jmx.yaml (#3494) Oct 6, 2017
dogstream License file clean up and updated copyright dates Apr 20, 2016
packaging [source] updating source install to 5.27.0 Sep 18, 2018
tests Remove utils that are available in datadog_checks (#3750) Jul 19, 2018
utils [gcp] Blacklist `ssh-keys` attribute (on top of `sshKeys`) Aug 3, 2018
win32 [Windows] Start subservices (trace/process) if they're configured on (#… Feb 8, 2018
.gitignore [pdh] use libs provided in toolkit (#3691) Apr 18, 2018
.pylintrc [windows] 💚 CI Jul 28, 2016
.rubocop.yml ignore windows shenaningans Oct 11, 2017
.travis.yml run the default flavor first May 17, 2018 [changelog] set release date Sep 18, 2018 [integrations] [core] removes final checks and tests (#3215) Feb 24, 2017
Gemfile Revert "make windows happy" Oct 11, 2017
LICENSE License file clean up and updated copyright dates Apr 20, 2016 addressed PR comemnts Mar 19, 2018
Rakefile run cassandra tests with the agent May 15, 2018 Add message about check_rate (#3730) May 8, 2018 Deduplicate tags on metrics, events and service_checks for check and … Jan 31, 2018
appveyor.yml Remove utils that are available in datadog_checks (#3750) Jul 19, 2018 [config] bumping nightlies to 5.28.0 Sep 18, 2018 Remove check for pidfile on windows. (#3574) Nov 13, 2017
datadog-cert.pem Adding the ssl certificate to the packaging for proxy support Feb 13, 2013
datadog.conf.example Clean trace-agent ini config options Feb 13, 2018 Adds an option to disable IPv6. Dec 5, 2017 Change logs to warning Oct 16, 2017 Fix potential leak of API key in collector.log and dogstatsd.log (#3537) Oct 3, 2017 [core] Hostname logic refactoring (#2822) Sep 8, 2016 Make the classpath seperator in jmxfetch adjust to the os (#3729) May 14, 2018 [flake8] enforce sane defaults for import order Jun 16, 2015
requirements-opt.txt [protobuf] bumping to 3.5.1 Dec 26, 2017
requirements-test.txt bump flake8 to 3.5.0 Feb 15, 2018
requirements.txt bump request to 2.19.1 (#3755) Jun 15, 2018 [windows] address review comments Feb 7, 2017 [wheels] allow running checks packaged as wheels (#3555) Dec 19, 2017 [jmxfetch] fix windows bootloop 🐛 Apr 21, 2015
tox.ini add more exceptions Feb 15, 2018 [forwarder] Make payload rejection log entry more explicit (#3486) Aug 22, 2017 Use safe_load instead of load from PyYaml Jul 3, 2018

Build Status

Important note

This repository contains the source code for the Datadog Agent up to and including major version 5. Although still supported, no major feature is planned for this release line and we encourage users and contributors to refer to the new Agent codebase, introduced with the release of version 6.0.0 and tracked in a different git repository.


Please refer to the Change log for more details about the changes introduced at each release.

How to contribute code

Before submitting any code, please read our contributing guidelines. We'll keep accepting contributions as long as the major version 5 is supported but please consider submitting new features to the new Agent codebase.

Please note that the Agent is licensed for simplicity's sake under a simplified BSD license, as indicated in the LICENSE file. Exceptions are marked with LICENSE-xxx where xxx is the component name. If you do not agree with the licensing terms and wish to contribute code nonetheless, please email us at before submitting your pull request.

Setup your environment


  • python 2.7
  • bundler (to get it: gem install bundler)
# Clone the repository
git clone

# Create a virtual environment and install the dependencies:
cd dd-agent
bundle install
rake setup_env

# Activate the virtual environment
source venv/bin/activate

# Lint
bundle exec rake lint

# Run a flavored test
bundle exec rake ci:run[apache]


All checks have been moved to the Integrations Core repo. Please look there to submit related issues, PRs, or review the latest changes.


More about how to write tests and run them here

How to configure the Agent

If you are using packages on linux, the main configuration file lives in /etc/dd-agent/datadog.conf. Per-check configuration files are in /etc/dd-agent/conf.d. We provide an example in the same directory that you can use as a template.

How to write your own checks

Writing your own checks is easy using our checks.d interface. Read more about how to use it on our Guide to Agent Checks.


git log --all | grep 'Author' | sort -u