github.com/anuvu/nomad@v0.8.7-atom1/website/source/docs/agent/configuration/telemetry.html.md (about)

     1  ---
     2  layout: "docs"
     3  page_title: "telemetry Stanza - Agent Configuration"
     4  sidebar_current: "docs-agent-configuration-telemetry"
     5  description: |-
     6    The "telemetry" stanza configures Nomad's publication of metrics and telemetry
     7    to third-party systems.
     8  ---
     9  
    10  # `telemetry` Stanza
    11  
    12  <table class="table table-bordered table-striped">
    13    <tr>
    14      <th width="120">Placement</th>
    15      <td>
    16        <code>**telemetry**</code>
    17      </td>
    18    </tr>
    19  </table>
    20  
    21  
    22  The `telemetry` stanza configures Nomad's publication of metrics and telemetry
    23  to third-party systems.
    24  
    25  ```hcl
    26  telemetry {
    27    publish_allocation_metrics = true
    28    publish_node_metrics       = true
    29  }
    30  ```
    31  
    32  This section of the documentation only covers the configuration options for
    33  `telemetry` stanza. To understand the architecture and metrics themselves,
    34  please see the [Nomad telemetry documentation](/docs/agent/telemetry.html).
    35  
    36  ## `telemetry` Parameters
    37  
    38  Due to the number of configurable parameters to the `telemetry` stanza,
    39  parameters on this page are grouped by the telemetry provider.
    40  
    41  ### Common
    42  
    43  The following options are available on all telemetry configurations.
    44  
    45  - `disable_hostname` `(bool: false)` - Specifies if gauge values should be
    46    prefixed with the local hostname.
    47  
    48  - `collection_interval` `(duration: 1s)` - Specifies the time interval at which
    49    the Nomad agent collects telemetry data.
    50  
    51  - `use_node_name` `(bool: false)` - Specifies if gauge values should be
    52    prefixed with the name of the node, instead of the hostname. If set it will
    53    override [disable_hostname](#disable_hostname) value.
    54  
    55  - `publish_allocation_metrics` `(bool: false)` - Specifies if Nomad should
    56    publish runtime metrics of allocations.
    57  
    58  - `publish_node_metrics` `(bool: false)` - Specifies if Nomad should publish
    59    runtime metrics of nodes.
    60  
    61  - `backwards_compatible_metrics` `(bool: false)` - Specifies if Nomad should
    62    publish metrics that are backwards compatible with versions below 0.7, as
    63    post version 0.7, Nomad emits tagged metrics. All new metrics will
    64    only be added to tagged metrics. Note that this option is used to transition
    65    monitoring to tagged metrics and will eventually be deprecated.
    66  
    67  - `disable_tagged_metrics` `(bool: false)` - Specifies if Nomad should not emit
    68    tagged metrics and only emit metrics compatible with versions below Nomad
    69    0.7. Note that this option is used to transition monitoring to tagged
    70    metrics and will eventually be deprecated.
    71  
    72  - `filter_default` `(bool: true)` - This controls whether to allow metrics that
    73    have not been specified by the filter. Defaults to true, which will allow all
    74    metrics when no filters are provided. When set to false with no filters, no
    75    metrics will be sent.
    76  
    77  - `prefix_filter` `(list: [])` - This is a list of filter rules to apply for
    78    allowing/blocking metrics by prefix. A leading "<b>+</b>" will enable any
    79    metrics with the given prefix, and a leading "<b>-</b>" will block them. If
    80    there is overlap between two rules, the more specific rule will take
    81    precedence. Blocking will take priority if the same prefix is listed multiple
    82    times. 
    83  
    84  ```javascript
    85    [
    86      "-nomad.raft",
    87      "+nomad.raft.apply",
    88      "-nomad.memberlist",
    89    ]
    90  ```
    91  
    92  - `disable_dispatched_job_summary_metrics` `(bool: false)` - Specifies if Nomad
    93    should ignore jobs dispatched from a parameterized job when publishing job
    94    summary statistics. Since each job has a small memory overhead for tracking
    95    summary statistics, it is sometimes desired to trade these statistics for
    96    more memory when dispatching high volumes of jobs.
    97  
    98  ### `statsite`
    99  
   100  These `telemetry` parameters apply to
   101  [statsite](https://github.com/armon/statsite).
   102  
   103  - `statsite_address` `(string: "")` - Specifies the address of a statsite server
   104    to forward metrics data to.
   105  
   106  ```hcl
   107  telemetry {
   108    statsite_address = "statsite.company.local:8125"
   109  }
   110  ```
   111  
   112  ### `statsd`
   113  
   114  These `telemetry` parameters apply to
   115  [statsd](https://github.com/etsy/statsd).
   116  
   117  - `statsd_address` `(string: "")` - Specifies the address of a statsd server to
   118    forward metrics to.
   119  
   120  ```hcl
   121  telemetry {
   122    statsd_address = "statsd.company.local:8125"
   123  }
   124  ```
   125  
   126  ### `datadog`
   127  
   128  These `telemetry` parameters apply to
   129  [DataDog statsd](https://github.com/DataDog/dd-agent).
   130  
   131  - `datadog_address` `(string: "")` - Specifies the address of a DataDog statsd
   132    server to forward metrics to.
   133  
   134  - `datadog_tags` `(list: [])` - Specifies a list of global tags that will be
   135    added to all telemetry packets sent to DogStatsD. It is a list of strings,
   136    where each string looks like "my_tag_name:my_tag_value".
   137  
   138  
   139  ```hcl
   140  telemetry {
   141    datadog_address = "dogstatsd.company.local:8125"
   142    datadog_tags = ["my_tag_name:my_tag_value"]
   143  }
   144  ```
   145  
   146  ### `prometheus`
   147  
   148  These `telemetry` parameters apply to [Prometheus](https://prometheus.io).
   149  
   150  - `prometheus_metrics` `(bool: false)` - Specifies whether the agent should
   151    make Prometheus formatted metrics available at `/v1/metrics?format=prometheus`.
   152  
   153  ### `circonus`
   154  
   155  These `telemetry` parameters apply to
   156  [Circonus](http://circonus.com/).
   157  
   158  - `circonus_api_token` `(string: "")` - Specifies a valid Circonus API Token
   159    used to create/manage check. If provided, metric management is enabled.
   160  
   161  - `circonus_api_app` `(string: "nomad")` - Specifies a valid app name associated
   162    with the API token.
   163  
   164  - `circonus_api_url` `(string: "https://api.circonus.com/v2")` - Specifies the
   165    base URL to use for contacting the Circonus API.
   166  
   167  - `circonus_submission_interval` `(string: "10s")` - Specifies the interval at
   168    which metrics are submitted to Circonus.
   169  
   170  - `circonus_submission_url` `(string: "")` - Specifies the
   171    `check.config.submission_url` field, of a Check API object, from a previously
   172    created HTTPTRAP check.
   173  
   174  - `circonus_check_id` `(string: "")` - Specifies the Check ID (**not check
   175    bundle**) from a previously created HTTPTRAP check. The numeric portion of the
   176    `check._cid` field in the Check API object.
   177  
   178  - `circonus_check_force_metric_activation` `(bool: false)` - Specifies if force
   179    activation of metrics which already exist and are not currently active. If
   180    check management is enabled, the default behavior is to add new metrics as
   181    they are encountered. If the metric already exists in the check, it will
   182    not be activated. This setting overrides that behavior.
   183  
   184  - `circonus_check_instance_id` `(string: "<hostname>:<application>")` - Serves
   185    to uniquely identify the metrics coming from this *instance*.  It can be used
   186    to maintain metric continuity with transient or ephemeral instances as they
   187    move around within an infrastructure. By default, this is set to
   188    hostname:application name (e.g. "host123:nomad").
   189  
   190  - `circonus_check_search_tag` `(string: <service>:<application>)` - Specifies a
   191    special tag which, when coupled with the instance id, helps to narrow down the
   192    search results when neither a Submission URL or Check ID is provided. By
   193    default, this is set to service:app (e.g. "service:nomad").
   194  
   195  - `circonus_check_display_name` `(string: "")` - Specifies a name to give a
   196     check when it is created. This name is displayed in the Circonus UI Checks
   197     list.
   198  
   199  - `circonus_check_tags` `(string: "")` - Comma separated list of additional
   200    tags to add to a check when it is created.
   201  
   202  - `circonus_broker_id` `(string: "")` - Specifies the ID of a specific Circonus
   203    Broker to use when creating a new check. The numeric portion of `broker._cid`
   204    field in a Broker API object. If metric management is enabled and neither a
   205    Submission URL nor Check ID is provided, an attempt will be made to search for
   206    an existing check using Instance ID and Search Tag. If one is not found, a new
   207    HTTPTRAP check will be created. By default, this is a random
   208    Enterprise Broker is selected, or, the default Circonus Public Broker.
   209  
   210  - `circonus_broker_select_tag` `(string: "")` - Specifies a special tag which
   211    will be used to select a Circonus Broker when a Broker ID is not provided. The
   212    best use of this is to as a hint for which broker should be used based on
   213    *where* this particular instance is running (e.g. a specific geographic location or
   214    datacenter, dc:sfo).