Defined Type: profile::prometheus::wmf_elasticsearch_exporter

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

Overview

Define: profile::prometheus::wmf_elasticsearch_exporter

This adds some WMF specific metrics that are not available in the standard exporter.

Parameters

prometheus_nodes

List of Prometheus master nodes.

prometheus_port

Port used by the exporter for the listen socket

elasticsearch_port

Port to monitor elasticsearch on

Parameters:

  • prometheus_nodes (Array[String])
  • prometheus_port (Stdlib::Port)
  • elasticsearch_port (Stdlib::Port)


14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'modules/profile/manifests/prometheus/wmf_elasticsearch_exporter.pp', line 14

define profile::prometheus::wmf_elasticsearch_exporter(
    Array[String] $prometheus_nodes,
    Stdlib::Port $prometheus_port,
    Stdlib::Port $elasticsearch_port,
) {
    $prometheus_nodes_ferm = join($prometheus_nodes, ' ')

    prometheus::wmf_elasticsearch_exporter { $title:
        prometheus_port    => $prometheus_port,
        elasticsearch_port => $elasticsearch_port,
    }

    ferm::service { "prometheus_wmf_elasticsearch_exporter_${prometheus_port}":
        proto  => 'tcp',
        port   => $prometheus_port,
        srange => "(@resolve((${prometheus_nodes_ferm})) @resolve((${prometheus_nodes_ferm}), AAAA))",
    }

}