Skip to content

Legacy Tags

Mike Fiedler edited this page Mar 21, 2016 · 2 revisions

Status: SUPERSEDED

In chef-handler-datadog 0.9.0, the behavior has shifted to allow a user-defined override for the tag prefix, deffaulting to the existing tag: prefix.

This parameter must be passed along from the chef-datadog cookbook's resource, controlled via an attribute.

We do not expect to change the default behavior any time soon.


TL,DR

The default behavior for Chef-applied tags to nodes has changed between chef-handler-datadog 0.7.0 and 0.8.0.

The previous method is now deprecated and will be removed in a future release. To adopt the new behavior, pass the config param legacy_tags: false to the handler.

Problem

Chef Tags are strings. There's no requirement for any structure or 'key:value' pairs to be used, however using a single string (or key) is not very useful when trying to use tags as comparison metadata across metrics, monitors, or dashboards.

This led to the handler adding a prefix of tag: on any tags it found and using those when submitting metadata back to Datadog.

However, this presents a "flat" namespace of tag, not allowing for deeper slicing of these groups.

Many have adopted a convention of using the key:value structure when using Chef tags.

For example, a group of nodes with a Chef tag of breed:poodle would end up in Datadog as tag:breed:poodle allowing only to split by tag, not by breed.

Solution

The new behavior will attempt to detect any : in each tag, and if found, not prefix with tag:, allowing the split by breed, using the above example.

Preparation

The handler will emit a warning when using the current (legacy) behavior, with a link to this article.

After a user has determined that they are ready to make the switch from legacy tags to key:value tags, pass the legacy_tags: false configuration argument to the handler to activate the correct behavior.

The default behavior will be replaced in a future release of the handler, and eventually removed.

See https://github.com/DataDog/chef-handler-datadog/issues/58 for more discussion.

Clone this wiki locally