Skip to content

Latest commit

 

History

History
62 lines (44 loc) · 3.6 KB

README.md

File metadata and controls

62 lines (44 loc) · 3.6 KB

Datadog Agent

CircleCI Build status Coverage status GoDoc Go Report Card

The present repository contains the source code of the Datadog Agent version 6. Please refer to the Agent user documentation for information about differences between Agent 5 and Agent 6. Additionally, we provide a list of prepackaged binaries for an easy install process here

Note: the source code of Datadog Agent 5 is located in the dd-agent repository.

Documentation

The general documentation of the project, including instructions for installation and development, is located under the docs directory of the present repo.

Getting started

To build the Agent you need:

  • Go 1.10.2 or later.
  • Python 2.7 along with development libraries.
  • Python dependencies. You may install these with pip install -r requirements.txt This will also pull in Invoke if not yet installed.

Note: you may want to use a python virtual environment to avoid polluting your system-wide python environment with the agent build/dev dependencies. By default, this environment is only used for dev dependencies listed in requirements.txt, if you want the agent to use the virtual environment's interpreter and libraries instead of the system python's ones, add --use-venv to the build command.

Note: You may have previously installed invoke via brew on MacOS, or pip in any other platform. We recommend you use the version pinned in the requirements file for a smooth development/build experience.

Builds and tests are orchestrated with invoke, type invoke --list on a shell to see the available tasks.

To start working on the Agent, you can build the master branch:

  1. checkout the repo: git clone https://github.com/DataDog/datadog-agent.git $GOPATH/src/github.com/DataDog/datadog-agent.
  2. cd into the project folder: cd $GOPATH/src/github.com/DataDog/datadog-agent.
  3. install project's dependencies: invoke deps. Make sure that $GOPATH/bin is in your $PATH otherwise this step might fail.
  4. build the whole project with invoke agent.build --build-exclude=snmp,systemd (with --use-venv to use a python virtualenv)

Please refer to the Agent Developer Guide for more details.

Run

To start the agent type agent run from the bin/agent folder, it will take care of adjusting paths and run the binary in foreground.

You need to provide a valid API key. You can either use the config file or overwrite it with the environment variable like:

DD_API_KEY=12345678990 ./bin/agent/agent run -c bin/agent/dist/datadog.yaml

Contributing code

You'll find information and help on how to contribute code to this project under the docs/dev directory of the present repo.