Introduction to the dd-agent Project
The dd-agent project represents the source code for the Datadog Agent up to major version 5. Although it remains supported, no significant new features are planned for this version. Instead, Datadog encourages users and developers to transition to the updated Agent, which begins with version 6.0.0 and is maintained in a separate repository. The new Agent comes with enhanced capabilities and a more modern codebase.
Changes and Contributions
Detailed updates and modifications for each release of the dd-agent can be found in the Change log. While contributions are still accepted for version 5 as long as it is supported, new feature contributions should be directed to the updated Agent's codebase. Those interested in contributing should review the contributing guidelines. The project is licensed under a simplified BSD license, with specific exceptions where applicable. Contributors who have concerns about the licensing terms are encouraged to contact Datadog before submitting pull requests.
Setting Up the Development Environment
To set up a development environment for dd-agent, certain tools are required:
- Python 2.7
- Bundler (install via
gem install bundler
)
Below are basic steps to get started:
# Clone the repository
git clone [email protected]:DataDog/dd-agent.git
# 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 the code
bundle exec rake lint
# Run a flavored test, for example, on Apache
bundle exec rake ci:run[apache]
Integrations
All integrations and checks previously managed under dd-agent have been moved to the Integrations Core repository. Developers should refer to this repository for issues, pull requests, and the latest developments related to integrations.
Testing
Information on writing and executing tests for dd-agent is available in the project's test documentation (tests/README.md
). This provides guidelines on ensuring that new and existing features work correctly.
Configuration
For those using Linux packages, the main configuration file is located at /etc/dd-agent/datadog.conf
. Configuration files for individual checks can be found in /etc/dd-agent/conf.d
. Example configurations are available to help users get started.
Writing Custom Checks
Developers can easily write their own checks using the checks.d interface. Datadog provides a Guide to Agent Checks that details how to create custom checks to suit specific monitoring needs.
Contributors
To view a list of contributors to the dd-agent project, you can use the following command:
git log --all | grep 'Author' | sort -u
This provides a comprehensive list of individuals who have contributed to the development and maintenance of the dd-agent project. The collaborative efforts of many contributors have shaped the project into a valuable tool for users managing and monitoring their systems.