cookbook 'datadog', '= 2.0.0'
Installs/Configures datadog components
cookbook 'datadog', '= 2.0.0', :supermarket
knife supermarket install datadog
knife supermarket download datadog
Where to Find the Code
To submit issues and patches please visit https://github.com/DataDog/chef-datadog.
The code is licensed under the Apache License 2.0 (see LICENSE for details).
Chef recipes to deploy Datadog's components and configuration automatically.
- python >= 2.6
- chef >= 10.14
- Amazon Linux
- Scientific Linux
The following Opscode cookbooks are dependencies:
Just a placeholder for now, when we have more shared components they will probably live there.
Installs the Datadog agent on the target system, sets the API key, and start the service to report on the local system metrics
Installs the chef-handler-datadog gem and invokes the handler at the end of a Chef run to report the details back to the newsfeed.
Installs the language-specific libraries to interact with
There are many other integration-specific recipes, that are meant to assist in deploying the correct agent configuration files and dependencies for a given integration.
- Add this cookbook to your Chef Server, either by installing with knife or downloading and uploading to your chef-server with knife.
- Add your API Key, either to
attributes/default.rb, or by using the inheritance model and placing it on the node via
roleor declaring it in another cookbook at a higher precendence level.
- Create an 'application key' for
chef_handlerhere, and add it to your node, like in Step #2.
- Upload the cookbook to chef server via:
knife cookbook upload datadog
- Associate the recipes with the desired
roles, i.e. "role:chef-client" should contain "datadog::dd-handler" and a "role:base" should start the agent with "datadog::dd-agent".
- Wait until
chef-clientruns on the target node (or trigger chef-client manually if you're impatient)
We are not making use of data_bags in this recipe at this time, as it is unlikely that you will have more than one API key and one application key.
For more deployment details, visit the Datadog Documentation site.
2.0.0 / 2014-08-22
- BREAKING CHANGE: Datadog Agent 5.0.0 Release Edition
With the release of Datadog Agent 5.x, all Python dependencies are now bundled, and extensions for monitoring are no
longer needed. Integration-specific recipes no longer install any packages, so if you are using a version older than
5.x, you may have to install these yourself. This greatly simplifies deployment of all components for monitoring.
See commit b77582122f3db774a838f90907b421e544dd099c for the exact package resources that have been removed.
- BREAKING CHANGE: Removed chef_gem support for Chef versions pre 0.10.9.
We haven't supported this version of Chef in some time, so it's unlikely that you will be affected at all.
Just in case, please review what versions of Chef you have installed, and use an older version of this cookbook until
you can upgrade them.
- [OPTIMIZE] Update repository recipe to choose correct arch, @remh
- [OPTIMIZE] Remove conditional python dep for Ubuntu 11.04, @miketheman
- [OPTIMIZE] Remove extra
apt-getcall during Agent recipe run, @miketheman
- [FEATURE] Add
kafkamonitoring recipe & tests, #113 @qqfr2507
- [FEATURE] Allow database name to be passed into postgres template, @miketheman
- [MISC] Many updates to testing suite. Faster style, better specs. @miketheman
1.2.0 / 2014-03-24
- [FEATURE] Add
relationsparameter to Postgres check config, #97 @miketheman
- [FEATURE] Add
sockparameter to MySQL check configuration, #105 @thisismana
- [FEATURE] Add more parameters to the haproxy templte to collect status metrics, #103 @evan2645 & @miketheman
datadog::mongorecipe now installs
pymongoand prerequisites, #81 @dwradcliffe
- [FEATURE] Allow attribute control over whether to allow the local Agent to handle non-local traffic, #100 @coosh
- [FEATURE] Allow attribute control over whether the Chef Handler is activated, #95 @jedi4ever, @miketheman
- [FEATURE] Allow attribute control over whether Agent should be running, #94 @jedi4ever, @miketheman
- [FEATURE] Reintroduce attribute config for dogstatsd daemon, #90 @jedi4ever, @miketheman
- [FEATURE] Allow jmx template to accept arbitrary
key, valuestatements, #93 @clofresh
- [FEATURE] Allow cassandra/zookeeper templates to accept arbitrary
key, valuestatements, @miketheman
- [FEATURE] Add name param to varnish recipe, #86 @clofresh
- [FEATURE] Allow attribute-driven settings for web proxy, #82 @antonio-osorio
- [FEATURE] Allow override of Agent config for hostname via attribute, #76 @ryandjurovich
- [FEATURE] Allow for non-conf.d integrations to be set via attributes, #66 @babbottscott
- [FEATURE] added hdfs recipe and template, #77 @phlipper
- [FEATURE] added zookeeper recipe and template, #74 @phlipper
- [BUGFIX] Warn user when more than one
networkinstance is defined, #98 @miketheman
- [BUGFIX] Properly indent jmx template, #88 @flah00
- [BUGFIX] Handle unrecognized Python version strings in a better fashion, #79 #80 #84, @jtimberman, @schisamo, @miketheman
- [BUGFIX] Set gpgcheck to false for
yumrepo if it exists, #89 @alexism, #101 @nkts
- [MISC] Inline doc for postgres recipe, #83 @timusg
1.1.1 / 2013-10-17
- [FEATURE] added rabbitmq recipe and template, @miketheman
- [BUGFIX] memcache dependencies and template, #67 @elijahandrews
- [BUGFIX] redis python client check was not properly checking the default version, @remh
- [MISC] tailor 1.3.1 caught some cosmetic issue, @alq
1.1.0 / 2013-08-20
- [FEATURE] Parameterize chef-handler-datadog Gem version, #60 @mfischer-zd
- [FEATURE] Allow control of
network.yamlvia attributes, #63 @JoeDeVries
- [FEATURE] Use Python version from Ohai to determine packages to install, #65 @elijahandrews
- [BUGFIX] redisdb default port in template should be 6379, #59 @miketheman
- [BUGFIX] templates creating empty
tagsin config when unspecified for multiple integrations #61 @alq
- [MISC] updated tests @elijahandrews, @miketheman
- [MISC] correct the riak integration example, @miketheman
- [MISC] updated CHANGELOG.md style, @miketheman
One of the dependencies of this cookbook is the
A change introduced in the
apt cookbook 2.0.0 release was a Chef 11-specific feature that would break on any Chef 10 system, so we considered adding a restriction in our
metadata.rb to anything below 2.0.0.
A fix has gone in to
apt 2.1.0 that relaxes this condition, and plays well with both Chef 10 and 11. We recommend using this version, or higher.
1.0.1 / 2013-05-14
- Fixed iis and rabbitmq template syntax - #58 @gregf
- Updated style/spacing in ActiveMQ template
- Updated test suite to validate cookbook & templates
- Updated chefignore to clean the built cookbook from containing cruft
1.0.0 / 2013-05-06
Reasoning behind this was that originally we attempted to auto-detect many common attributes and deploy automatic monitoring for them.
We found that since inclusion of the
datadog cookbook early in the run list caused the compile phase to be populated with our defaults (mostly
nil), instead of the desired target, and namespacing of the attributes became necessary.
NEW PROVIDER: Added a new
datadog_monitorprovider for integration use
The new provider is used in many pre-provided integration recipes, such as
This enables a run list to include this recipe, as well as populate a node attribute with the needed instance details to monitor the given service
- Updated dependencies in Gemfile, simplifies travis build - #34, #55
- Much improved test system (chefspec, test-kitchen) - #35 & others
- Tests against multiple versions of Chef - #18
- Added language-specific recipes for installing
- Added ability to control
dogstatsdfrom agent config via attribute - #27
- Placed the
dogstatsdlog file in
- Added attribute to configure dogstreams in
- Updated for
- (Handler Recipe) Better handling of EC2 instance ID for Handler - #44
- Updated for agent 3.6.x logging syntax
- Generated config file removes some whitespace - #56
- Removed dependency on
yum::epel, only uses
0.1.4 / 2013-04-25
- Quick fix for backporting test code to support upload in ruby 1.8.7
0.1.3 / 2013-01-27
- Work-around for COOK-2171
0.1.2 / 2012-10-15
- Fixed typo in jmx section
0.1.1 / 2012-09-18
- Added support for postgres, redis & memcached
dd-agent- updated to include more platforms
dd-handler- updated to leverage
chef_gemresource if available
- Updated copyright for 2012
- Updated syntax for node attribute accessors
- Some syntax styling fixes
- Added agent logging configuration
- Removed extraneous dependencies
- Added automated testing suite
- Updated for CentOS dependencies
- Link to github repository.
dd-handler- Corrects attribute name.
dd-agent- Adds an explicit varnish attribute.
dd-agent- Add varnish support.
dd-agent- default to using instance IDs as hostnames when running dd-agent on EC2
dd-agent- Full datadog.conf template using attributes (thanks @drewrothstein)
dd-agent- Added support for Nagios PerfData and Graphite.
dd-agent- Added support for RPM installs - Red Hat, CentOS, Scientific, Fedora
- Initial refactoring, including the
- Adding chef-handler-datadog to report to the newsfeed
- Added ruby-dev dependency