Puppet Class: profile::prometheus::statsd_exporter

Defined in:
modules/profile/manifests/prometheus/statsd_exporter.pp

Overview

SPDX-License-Identifier: Apache-2.0

Parameters:

  • mappings (Array[Hash]) (defaults to: lookup('profile::prometheus::statsd_exporter::mappings', { 'default_value' => [] }))
  • enable_relay (Boolean) (defaults to: lookup('profile::prometheus::statsd_exporter::enable_relay', { 'default_value' => true }))
  • relay_address (String) (defaults to: lookup('statsd'))
  • timer_type (Enum['summary', 'histogram']) (defaults to: lookup('profile::prometheus::statsd_exporter::timer_type', { 'default_value' => 'summary'}))
  • histogram_buckets (Array[Variant[Integer, Float]]) (defaults to: lookup('profile::prometheus::statsd_exporter::histogram_buckets', { 'default_value' => [0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1, 2.5, 5, 10],}))
  • enable_scraping (Boolean) (defaults to: lookup('profile::prometheus::statsd_exporter::enable_scraping', { 'default_value' => true }))
  • prometheus_instance (String) (defaults to: lookup('profile::prometheus::statsd_exporter::prometheus_instance', { 'default_value' => 'ops' }))


2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'modules/profile/manifests/prometheus/statsd_exporter.pp', line 2

class profile::prometheus::statsd_exporter (
    Array[Hash] $mappings      = lookup('profile::prometheus::statsd_exporter::mappings', { 'default_value' => [] }),
    Boolean     $enable_relay  = lookup('profile::prometheus::statsd_exporter::enable_relay', { 'default_value' => true }),
    String      $relay_address = lookup('statsd'),
    Enum['summary', 'histogram'] $timer_type = lookup('profile::prometheus::statsd_exporter::timer_type', { 'default_value' => 'summary'}),
    Array[Variant[Integer, Float]] $histogram_buckets = lookup('profile::prometheus::statsd_exporter::histogram_buckets', { 'default_value' => [0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1, 2.5, 5, 10],}),
    Boolean     $enable_scraping = lookup('profile::prometheus::statsd_exporter::enable_scraping', { 'default_value' => true }),
    String $prometheus_instance = lookup('profile::prometheus::statsd_exporter::prometheus_instance', { 'default_value' => 'ops' }),
) {
    if $enable_relay {
        $relay_addr = $relay_address
    } else {
        $relay_addr = ''
    }

    class { 'prometheus::statsd_exporter':
        mappings            => $mappings,
        relay_address       => $relay_addr,
        timer_type          => $timer_type,
        histogram_buckets   => $histogram_buckets,
        enable_scraping     => $enable_scraping,
        prometheus_instance => $prometheus_instance,
    }

    # Don't spam conntrack with localhost statsd clients
    ferm::client { 'statsd-exporter-client':
        proto   => 'udp',
        notrack => true,
        port    => 9125,
        drange  => ['127.0.0.1'],
    }
}