github.com/anth0d/nomad@v0.0.0-20221214183521-ae3a0a2cad06/website/content/docs/configuration/telemetry.mdx (about)

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