2016-11-01 12:53:13 +00:00
|
|
|
---
|
|
|
|
layout: "docs"
|
|
|
|
page_title: "telemetry Stanza - Agent Configuration"
|
2018-06-22 20:47:33 +00:00
|
|
|
sidebar_current: "docs-configuration-telemetry"
|
2016-11-01 12:53:13 +00:00
|
|
|
description: |-
|
|
|
|
The "telemetry" stanza configures Nomad's publication of metrics and telemetry
|
|
|
|
to third-party systems.
|
|
|
|
---
|
|
|
|
|
|
|
|
# `telemetry` Stanza
|
|
|
|
|
|
|
|
<table class="table table-bordered table-striped">
|
|
|
|
<tr>
|
|
|
|
<th width="120">Placement</th>
|
|
|
|
<td>
|
|
|
|
<code>**telemetry**</code>
|
|
|
|
</td>
|
|
|
|
</tr>
|
|
|
|
</table>
|
|
|
|
|
|
|
|
|
|
|
|
The `telemetry` stanza configures Nomad's publication of metrics and telemetry
|
|
|
|
to third-party systems.
|
|
|
|
|
|
|
|
```hcl
|
|
|
|
telemetry {
|
2016-11-18 19:11:45 +00:00
|
|
|
publish_allocation_metrics = true
|
|
|
|
publish_node_metrics = true
|
2016-11-01 12:53:13 +00:00
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
This section of the documentation only covers the configuration options for
|
|
|
|
`telemetry` stanza. To understand the architecture and metrics themselves,
|
2018-11-26 20:18:57 +00:00
|
|
|
please see the [Telemetry guide](/docs/telemetry/index.html).
|
2016-11-01 12:53:13 +00:00
|
|
|
|
|
|
|
## `telemetry` Parameters
|
|
|
|
|
|
|
|
Due to the number of configurable parameters to the `telemetry` stanza,
|
|
|
|
parameters on this page are grouped by the telemetry provider.
|
|
|
|
|
|
|
|
### Common
|
|
|
|
|
|
|
|
The following options are available on all telemetry configurations.
|
|
|
|
|
|
|
|
- `disable_hostname` `(bool: false)` - Specifies if gauge values should be
|
|
|
|
prefixed with the local hostname.
|
|
|
|
|
2017-03-09 22:20:35 +00:00
|
|
|
- `collection_interval` `(duration: 1s)` - Specifies the time interval at which
|
|
|
|
the Nomad agent collects telemetry data.
|
|
|
|
|
2016-12-13 21:10:39 +00:00
|
|
|
- `use_node_name` `(bool: false)` - Specifies if gauge values should be
|
|
|
|
prefixed with the name of the node, instead of the hostname. If set it will
|
|
|
|
override [disable_hostname](#disable_hostname) value.
|
|
|
|
|
2016-11-01 12:53:13 +00:00
|
|
|
- `publish_allocation_metrics` `(bool: false)` - Specifies if Nomad should
|
|
|
|
publish runtime metrics of allocations.
|
|
|
|
|
|
|
|
- `publish_node_metrics` `(bool: false)` - Specifies if Nomad should publish
|
|
|
|
runtime metrics of nodes.
|
|
|
|
|
2017-09-05 21:58:35 +00:00
|
|
|
- `backwards_compatible_metrics` `(bool: false)` - Specifies if Nomad should
|
|
|
|
publish metrics that are backwards compatible with versions below 0.7, as
|
2017-09-07 21:54:43 +00:00
|
|
|
post version 0.7, Nomad emits tagged metrics. All new metrics will
|
2017-09-06 18:23:58 +00:00
|
|
|
only be added to tagged metrics. Note that this option is used to transition
|
|
|
|
monitoring to tagged metrics and will eventually be deprecated.
|
|
|
|
|
2017-09-05 21:58:35 +00:00
|
|
|
|
|
|
|
- `disable_tagged_metrics` `(bool: false)` - Specifies if Nomad should not emit
|
|
|
|
tagged metrics and only emit metrics compatible with versions below Nomad
|
2017-09-06 18:23:58 +00:00
|
|
|
0.7. Note that this option is used to transition monitoring to tagged
|
|
|
|
metrics and will eventually be deprecated.
|
|
|
|
|
|
|
|
|
2017-09-05 21:58:35 +00:00
|
|
|
|
2016-11-01 12:53:13 +00:00
|
|
|
### `statsite`
|
|
|
|
|
|
|
|
These `telemetry` parameters apply to
|
|
|
|
[statsite](https://github.com/armon/statsite).
|
|
|
|
|
|
|
|
- `statsite_address` `(string: "")` - Specifies the address of a statsite server
|
|
|
|
to forward metrics data to.
|
|
|
|
|
|
|
|
```hcl
|
|
|
|
telemetry {
|
|
|
|
statsite_address = "statsite.company.local:8125"
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
### `statsd`
|
|
|
|
|
|
|
|
These `telemetry` parameters apply to
|
|
|
|
[statsd](https://github.com/etsy/statsd).
|
|
|
|
|
|
|
|
- `statsd_address` `(string: "")` - Specifies the address of a statsd server to
|
|
|
|
forward metrics to.
|
|
|
|
|
|
|
|
```hcl
|
|
|
|
telemetry {
|
|
|
|
statsd_address = "statsd.company.local:8125"
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
### `datadog`
|
|
|
|
|
|
|
|
These `telemetry` parameters apply to
|
|
|
|
[DataDog statsd](https://github.com/DataDog/dd-agent).
|
|
|
|
|
|
|
|
- `datadog_address` `(string: "")` - Specifies the address of a DataDog statsd
|
|
|
|
server to forward metrics to.
|
|
|
|
|
2018-02-06 16:21:15 +00:00
|
|
|
- `datadog_tags` `(list: [])` - Specifies a list of global tags that will be
|
|
|
|
added to all telemetry packets sent to DogStatsD. It is a list of strings,
|
|
|
|
where each string looks like "my_tag_name:my_tag_value".
|
|
|
|
|
|
|
|
|
2016-11-01 12:53:13 +00:00
|
|
|
```hcl
|
|
|
|
telemetry {
|
|
|
|
datadog_address = "dogstatsd.company.local:8125"
|
2018-02-06 16:21:15 +00:00
|
|
|
datadog_tags = ["my_tag_name:my_tag_value"]
|
2016-11-01 12:53:13 +00:00
|
|
|
}
|
|
|
|
```
|
|
|
|
|
2017-09-11 13:54:26 +00:00
|
|
|
### `prometheus`
|
|
|
|
|
2017-09-12 14:16:18 +00:00
|
|
|
These `telemetry` parameters apply to [Prometheus](https://prometheus.io).
|
2017-09-11 13:54:26 +00:00
|
|
|
|
|
|
|
- `prometheus_metrics` `(bool: false)` - Specifies whether the agent should
|
2017-09-12 14:16:18 +00:00
|
|
|
make Prometheus formatted metrics available at `/v1/metrics?format=prometheus`.
|
2017-09-11 13:54:26 +00:00
|
|
|
|
2016-11-01 12:53:13 +00:00
|
|
|
### `circonus`
|
|
|
|
|
|
|
|
These `telemetry` parameters apply to
|
|
|
|
[Circonus](http://circonus.com/).
|
|
|
|
|
|
|
|
- `circonus_api_token` `(string: "")` - Specifies a valid Circonus API Token
|
|
|
|
used to create/manage check. If provided, metric management is enabled.
|
|
|
|
|
|
|
|
- `circonus_api_app` `(string: "nomad")` - Specifies a valid app name associated
|
|
|
|
with the API token.
|
|
|
|
|
|
|
|
- `circonus_api_url` `(string: "https://api.circonus.com/v2")` - Specifies the
|
|
|
|
base URL to use for contacting the Circonus API.
|
|
|
|
|
|
|
|
- `circonus_submission_interval` `(string: "10s")` - Specifies the interval at
|
|
|
|
which metrics are submitted to Circonus.
|
|
|
|
|
|
|
|
- `circonus_submission_url` `(string: "")` - Specifies the
|
|
|
|
`check.config.submission_url` field, of a Check API object, from a previously
|
|
|
|
created HTTPTRAP check.
|
|
|
|
|
|
|
|
- `circonus_check_id` `(string: "")` - Specifies the Check ID (**not check
|
|
|
|
bundle**) from a previously created HTTPTRAP check. The numeric portion of the
|
|
|
|
`check._cid` field in the Check API object.
|
|
|
|
|
|
|
|
- `circonus_check_force_metric_activation` `(bool: false)` - Specifies if force
|
|
|
|
activation of metrics which already exist and are not currently active. If
|
|
|
|
check management is enabled, the default behavior is to add new metrics as
|
|
|
|
they are encountered. If the metric already exists in the check, it will
|
|
|
|
not be activated. This setting overrides that behavior.
|
|
|
|
|
|
|
|
- `circonus_check_instance_id` `(string: "<hostname>:<application>")` - Serves
|
|
|
|
to uniquely identify the metrics coming from this *instance*. It can be used
|
|
|
|
to maintain metric continuity with transient or ephemeral instances as they
|
|
|
|
move around within an infrastructure. By default, this is set to
|
|
|
|
hostname:application name (e.g. "host123:nomad").
|
|
|
|
|
|
|
|
- `circonus_check_search_tag` `(string: <service>:<application>)` - Specifies a
|
|
|
|
special tag which, when coupled with the instance id, helps to narrow down the
|
|
|
|
search results when neither a Submission URL or Check ID is provided. By
|
|
|
|
default, this is set to service:app (e.g. "service:nomad").
|
|
|
|
|
2016-11-09 20:12:30 +00:00
|
|
|
- `circonus_check_display_name` `(string: "")` - Specifies a name to give a
|
|
|
|
check when it is created. This name is displayed in the Circonus UI Checks
|
|
|
|
list.
|
|
|
|
|
|
|
|
- `circonus_check_tags` `(string: "")` - Comma separated list of additional
|
|
|
|
tags to add to a check when it is created.
|
|
|
|
|
2016-11-01 12:53:13 +00:00
|
|
|
- `circonus_broker_id` `(string: "")` - Specifies the ID of a specific Circonus
|
|
|
|
Broker to use when creating a new check. The numeric portion of `broker._cid`
|
|
|
|
field in a Broker API object. If metric management is enabled and neither a
|
|
|
|
Submission URL nor Check ID is provided, an attempt will be made to search for
|
|
|
|
an existing check using Instance ID and Search Tag. If one is not found, a new
|
|
|
|
HTTPTRAP check will be created. By default, this is a random
|
|
|
|
Enterprise Broker is selected, or, the default Circonus Public Broker.
|
|
|
|
|
|
|
|
- `circonus_broker_select_tag` `(string: "")` - Specifies a special tag which
|
|
|
|
will be used to select a Circonus Broker when a Broker ID is not provided. The
|
|
|
|
best use of this is to as a hint for which broker should be used based on
|
2017-07-17 18:41:50 +00:00
|
|
|
*where* this particular instance is running (e.g. a specific geographic location or
|
2016-11-01 12:53:13 +00:00
|
|
|
datacenter, dc:sfo).
|