Skip to content

Files

Latest commit

5237b77 · Sep 26, 2020

History

History
8526 lines (4155 loc) · 138 KB

REFERENCE.md

File metadata and controls

8526 lines (4155 loc) · 138 KB

Reference

Table of Contents

Classes

Public Classes

Private Classes

  • prometheus::service_reload: This class implements prometheus service reload without restarting the whole service when a config changes

Defined types

  • prometheus::alerts: This module manages prometheus alert files for prometheus
  • prometheus::daemon: This define managed prometheus daemons that don't have their own class
  • prometheus::scrape_job: This define is used to export prometheus scrape settings from nodes to be scraped to the node running prometheus itself. This can be used to make prometheus find instances of your running service or application.

Data types

Classes

prometheus

#sammary This module manages prometheus

Parameters

The following parameters are available in the prometheus class.

configname

Data type: String[1]

the name of the configfile, defaults to prometheus.yaml or prometheus.yml on most operating systems

Default value: 'prometheus.yaml'

manage_user

Data type: Boolean

Whether to create user for prometheus or rely on external code for that

Default value: true

user

Data type: String

User running prometheus

manage_group

Data type: Boolean

Whether to create user for prometheus or rely on external code for that

Default value: true

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

group

Data type: String

Group under which prometheus is running

bin_dir

Data type: Stdlib::Absolutepath

Directory where binaries are located

shared_dir

Data type: Stdlib::Absolutepath

Directory where shared files are located

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $facts['os']['architecture']

version

Data type: String

Prometheus release

install_method

Data type: String

Installation method: url or package (only url is supported currently)

os

Data type: String[1]

Operating system (linux is supported)

Default value: downcase($facts['kernel'])

download_url

Data type: Optional[String]

Complete URL corresponding to the Prometheus release, default to undef

download_url_base

Data type: Prometheus::Uri

Base URL for prometheus

download_extension

Data type: String

Extension of Prometheus binaries archive

package_name

Data type: String

Prometheus package name - not available yet

package_ensure

Data type: String

If package, then use this for package ensurel default 'latest'

config_dir

Data type: String

Prometheus configuration directory (default /etc/prometheus)

localstorage

Data type: Stdlib::Absolutepath

Location of prometheus local storage (storage.local argument)

extra_options

Data type: Optional[String[1]]

Extra options added to prometheus startup command

config_hash

Data type: Hash

Startup config hash

Default value: {}

config_defaults

Data type: Hash

Startup config defaults

Default value: {}

config_template

Data type: String

Configuration template to use (template/prometheus.yaml.erb)

config_mode

Data type: String

Configuration file mode (default 0660)

service_enable

Data type: Boolean

Whether to enable or not prometheus service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured from prometheus service (default 'running')

Default value: 'running'

service_name

Data type: String

Name of the prometheus service (default 'prometheus')

manage_service

Data type: Boolean

Should puppet manage the prometheus service? (default true)

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart prometheus on configuration change? (default true) Note: this applies only to command-line options changes. Configuration options are always reloaded without restarting.

Default value: true

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

global_config

Data type: Hash

Prometheus global configuration variables

rule_files

Data type: Array

Prometheus rule files

scrape_configs

Data type: Array

Prometheus scrape configs

remote_read_configs

Data type: Array

Prometheus remote_read config to scrape prometheus 1.8+ instances

remote_write_configs

Data type: Array

Prometheus remote_write config to scrape prometheus 1.8+ instances

alerts

Data type: Variant[Array,Hash]

alert rules to put in alerts.rules

extra_alerts

Data type: Hash

Hash with extra alert rules to put in separate files.

Default value: {}

alert_relabel_config

Data type: Array

Prometheus alert relabel config under alerting

alertmanagers_config

Data type: Array

Prometheus managers config under alerting

storage_retention

Data type: String

How long to keep timeseries data. This is given as a duration like "100h" or "14d". Until prometheus 1.8.*, only durations understood by golang's time.ParseDuration are supported. Starting with prometheus 2, durations can also be given in days, weeks and years.

external_url

Data type: Optional[Variant[Stdlib::HTTPUrl, Stdlib::Unixpath, String[1]]]

The URL under which Alertmanager is externally reachable (for example, if Alertmanager is served via a reverse proxy). Used for generating relative and absolute links back to Alertmanager itself. If omitted, relevant URL components will be derived automatically.

Default value: undef

extract_command

Data type: Optional[String[1]]

Custom command passed to the archive resource to extract the downloaded archive.

collect_tag

Data type: Optional[String[1]]

Only collect scrape jobs tagged with this label. Allowing to split jobs over multiple prometheuses.

Default value: undef

collect_scrape_jobs

Data type: Optional[Array[Hash[String[1], Any]]]

Array of scrape_configs. Format, e.g.:

  • job_name: some_exporter scheme: https The jobs defined here will be used to collect resources exported via prometheus::daemon, creating the appropriate prometheus scrape configs for each endpoint. All scrape_config options can be passed as hash elements. Only the job_name is mandatory.

Default value: []

max_open_files

Data type: Optional[Integer]

The maximum number of file descriptors for the prometheus server. Defaults to undef, but set to a large integer to override your default OS limit. Currently only implemented for systemd based service.

Default value: undef

usershell

Data type: Stdlib::Absolutepath

if requested, we create a user for prometheus or the exporters. The default shell is nologin. It can be overwritten to any valid path.

web_listen_address

Data type: Optional[String[1]]

--web.listen-address="0.0.0.0:9090" Address to listen on for UI, API, and telemetry.

Default value: undef

web_read_timeout

Data type: Optional[String[1]]

--web.read-timeout=5m Maximum duration before timing out read of the request, and closing idle connections.

Default value: undef

web_max_connections

Data type: Optional[String[1]]

--web.max-connections=512 Maximum number of simultaneous connections.

Default value: undef

web_route_prefix

Data type: Optional[String[1]]

--web.route-prefix= Prefix for the internal routes of web endpoints. Defaults to path of --web.external-url.

Default value: undef

web_user_assets

Data type: Optional[String[1]]

--web.user-assets= Path to static asset directory, available at /user.

Default value: undef

web_enable_lifecycle

Data type: Boolean

--web.enable-lifecycle Enable shutdown and reload via HTTP request

Default value: false

web_enable_admin_api

Data type: Boolean

--web.enable-admin-api Enable API endpoints for admin control actions.

Default value: false

web_page_title

Data type: Optional[String[1]]

--web.page-title="Prometheus Time Series Collection and Processing Server" Document title of Prometheus instance.

Default value: undef

web_cors_origin

Data type: Optional[String[1]]

--web.cors.origin=".*" Regex for CORS origin. It is fully anchored. Example: 'https?://(domain1|domain2).com'

Default value: undef

storage_retention_size

Data type: Optional[String[1]]

--storage.tsdb.retention.size=STORAGE.TSDB.RETENTION.SIZE [EXPERIMENTAL] Maximum number of bytes that can be stored for blocks. Units supported: KB, MB, GB, TB, PB. This flag is experimental and can be changed in future releases.

Default value: undef

storage_no_lockfile

Data type: Boolean

--storage.tsdb.no-lockfile Do not create lockfile in data directory.

Default value: false

storage_allow_overlapping_blocks

Data type: Boolean

--storage.tsdb.allow-overlapping-blocks [EXPERIMENTAL] Allow overlapping blocks, which in turn enables vertical compaction and vertical query merge.

Default value: false

storage_wal_compression

Data type: Boolean

--storage.tsdb.wal-compression Compress the tsdb WAL.

Default value: false

storage_flush_deadline

Data type: Optional[String[1]]

--storage.remote.flush-deadline= How long to wait flushing sample on shutdown or config reload.

Default value: undef

storage_read_sample_limit

Data type: Optional[String[1]]

--storage.remote.read-sample-limit=5e7 Maximum overall number of samples to return via the remote read interface, in a single query. 0 means no limit. This limit is ignored for streamed response types.

Default value: undef

storage_read_concurrent_limit

Data type: Optional[String[1]]

--storage.remote.read-concurrent-limit=10 Maximum number of concurrent remote read calls. 0 means no limit.

Default value: undef

storage_read_max_bytes_in_frame

Data type: Optional[String[1]]

--storage.remote.read-max-bytes-in-frame=1048576 Maximum number of bytes in a single frame for streaming remote read response types before marshalling. Note that client might have limit on frame size as well. 1MB as recommended by protobuf by default.

Default value: undef

alert_for_outage_tolerance

Data type: Optional[String[1]]

--rules.alert.for-outage-tolerance=1h Max time to tolerate prometheus outage for restoring "for" state of alert.

Default value: undef

alert_for_grace_period

Data type: Optional[String[1]]

--rules.alert.for-grace-period=10m Minimum duration between alert and restored "for" state. This is maintained only for alerts with configured "for" time greater than grace period.

Default value: undef

alert_resend_delay

Data type: Optional[String[1]]

--rules.alert.resend-delay=1m Minimum amount of time to wait before resending an alert to Alertmanager.

Default value: undef

alertmanager_notification_queue_capacity

Data type: Optional[String[1]]

--alertmanager.notification-queue-capacity=10000 The capacity of the queue for pending Alertmanager notifications.

Default value: undef

alertmanager_timeout

Data type: Optional[String[1]]

--alertmanager.timeout=10s Timeout for sending alerts to Alertmanager.

Default value: undef

alertmanager_url

Data type: Optional[String[1]]

[REMOVED, v1 ONLY] -alertmanager.url Comma-separated list of Alertmanager URLs to send notifications to. In Prometheus v2, Alertmanager must be discovered via service discovery

Default value: undef

query_lookback_delta

Data type: Optional[String[1]]

--query.lookback-delta=5m The maximum lookback duration for retrieving metrics during expression evaluations.

Default value: undef

query_timeout

Data type: Optional[String[1]]

--query.timeout=2m Maximum time a query may take before being aborted.

Default value: undef

query_max_concurrency

Data type: Optional[String[1]]

--query.max-concurrency=20 Maximum number of queries executed concurrently.

Default value: undef

query_max_samples

Data type: Optional[String[1]]

--query.max-samples=50000000 Maximum number of samples a single query can load into memory. Note that queries will fail if they try to load more samples than this into memory, so this also limits the number of samples a query can return.

Default value: undef

query_staleness_delta

Data type: Optional[String[1]]

[REMOVED, v1 ONLY] -query.staleness-delta=5m0s Staleness delta allowance during expression evaluations.

Default value: undef

web_telemetry_path

Data type: Optional[String[1]]

[REMOVED, v1 ONLY] -web.telemetry-path="/metrics" Path under which to expose metrics

Default value: undef

web_enable_remote_shutdown

Data type: Boolean

[REMOVED, v1 ONLY] -web.enable-remote-shutdown=false Enable remote service shutdown.

Default value: false

log_level

Data type: Optional[Enum['debug', 'info', 'warn', 'error', 'fatal']]

--log.level=info Only log messages with the given severity or above. One of: [debug, info, warn, error] Value of 'fatal' is also allowed in prometheus v1

Default value: undef

log_format

Data type: Optional[Enum['logfmt', 'json']]

--log.format=logfmt Output format of log messages. One of: [logfmt, json]

Default value: undef

config_show_diff

Data type: Boolean

Whether to show prometheus configuration file diff in the Puppet logs.

Default value: true

extra_groups

Data type: Array

Extra groups of which the user should be a part

env_file_path

Data type: Stdlib::Absolutepath

manage_prometheus_server

Data type: Boolean

manage_config

Data type: Boolean

prometheus::alertmanager

This module manages prometheus alertmanager

Parameters

The following parameters are available in the prometheus::alertmanager class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: Stdlib::Absolutepath

Directory where binaries are located

Default value: $prometheus::bin_dir

config_file

Data type: Stdlib::Absolutepath

The path to put the configuration file

config_mode

Data type: String[1]

The permissions of the configuration files

Default value: $prometheus::config_mode

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: Prometheus::Uri

Base URL for the binary archive

extra_groups

Data type: Array

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

global

Data type: Hash

The global alertmanager configuration. Example (also default): prometheus::alertmanager::global: smtp_smarthost: 'localhost:25' smtp_from: 'alertmanager@localhost'

group

Data type: String[1]

Group under which the binary is running

inhibit_rules

Data type: Array

An array of inhibit rules. Example (also default): prometheus::alertmanager::inhibit_rules:

  • source_match: severity: 'critical' target_match: severity: 'warning' equal:
    • 'alertname'
    • 'cluster'
    • 'service'
init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: String[1]

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: $prometheus::os

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

receivers

Data type: Array

An array of receivers. Example (also default): prometheus::alertmanager::receivers:

  • name: 'Admin' email_configs:
    • to: 'root@localhost'
restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

route

Data type: Hash

The top level route. Example (also default): prometheus::alertmanager::route: group_by: - 'alertname' - 'cluster' - 'service' group_wait: '30s' group_interval: '5m' repeat_interval: '3h' receiver: 'Admin'

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the alertmanager service (default 'alertmanager')

Default value: 'alertmanager'

storage_path

Data type: Stdlib::Absolutepath

The storage path to pass to the alertmanager. Defaults to '/var/lib/alertmanager'

templates

Data type: Array

The array of template files. Defaults to [ "${config_dir}/*.tmpl" ]

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

config_dir

Data type: Stdlib::Absolutepath

reload_on_change

Data type: Boolean

Default value: false

manage_config

Data type: Boolean

Default value: true

prometheus::apache_exporter

This module manages prometheus apache_exporter

Parameters

The following parameters are available in the prometheus::apache_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: Stdlib::Absolutepath

Directory where binaries are located

Default value: $prometheus::bin_dir

config_mode

Data type: String[1]

The permissions of the configuration files

Default value: $prometheus::config_mode

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[Prometheus::Uri]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: Prometheus::Uri

Base URL for the binary archive

extra_groups

Data type: Array[String[1]]

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

scrape_uri

Data type: String[1]

The URI for the Apache status page

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the node exporter service (default 'apache_exporter')

Default value: 'apache_exporter'

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9117

scrape_job_name

Data type: String[1]

Default value: 'apache'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::beanstalkd_exporter

This module manages prometheus beanstalkd_exporter

Parameters

The following parameters are available in the prometheus::beanstalkd_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

config

Data type: String[1]

Path to configuration file that stores beanstalkd address

mapping_config

Data type: String[1]

Path to configuration file with tubes mappings (not implemented)

beanstalkd_address

Data type: String[1]

Address of beanstalkd, defaults to localhost

exporter_listen

Data type: String[1]

Address to bind beanstalkd_exporter to. Default is different than upstream (*:9371)

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Variant[Undef,String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

extra_groups

Data type: Array

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the beanstalkd exporter service (default 'beanstalkd_exporter')

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 8080

scrape_job_name

Data type: String[1]

Default value: 'beanstalkd'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::bird_exporter

This module manages prometheus bird exporter

Parameters

The following parameters are available in the prometheus::bird_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: '/usr/local/bin'

download_extension

Data type: String

Extension for the release binary archive

Default value: ''

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

Default value: 'https://github.com/czerwonk/bird_exporter/releases'

extra_groups

Data type: Array[String]

Extra groups to add the binary user to

Default value: ['bird']

extra_options

Data type: String[1]

Extra options added to the startup command

Default value: '-bird.v2 -web.listen-address=127.0.0.1:9324 -format.new=true'

group

Data type: String[1]

Group under which the binary is running

Default value: 'bird-exporter'

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: 'url'

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

Default value: 'installed'

package_name

Data type: String[1]

The binary package name - not available yet

Default value: 'bird_exporter'

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the bird exporter service (default 'bird_exporter')

Default value: 'bird_exporter'

user

Data type: String[1]

User which runs the service

Default value: 'bird-exporter'

version

Data type: String[1]

The binary release version

Default value: '1.2.4'

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9324

scrape_job_name

Data type: String[1]

Default value: 'bird'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

bin_name

Data type: Optional[String[1]]

Default value: undef

prometheus::blackbox_exporter

Example for configuring named blackbox modules via hiera details of the format: https://github.com/prometheus/blackbox_exporter/blob/master/CONFIGURATION.md prometheus::blackbox_exporter::modules: simple_ssl: prober: http timeout: 10s http: fail_if_not_ssl: true easy_tcp: prober: tcp tcp: preferred_ip_protocol: ip4

Parameters

The following parameters are available in the prometheus::blackbox_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

config_file

Data type: String[1]

Absolute path to configuration file (blackbox module definitions)

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

extra_groups

Data type: Array[String]

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

modules

Data type: Hash

Structured, array of blackbox module definitions for different probe types

Default value: {}

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the node exporter service (default 'blackbox_exporter')

Default value: 'blackbox_exporter'

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

config_mode

Data type: String[1]

The permissions of the configuration files

Default value: $prometheus::config_mode

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9115

scrape_job_name

Data type: String[1]

Default value: 'blackbox'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::collectd_exporter

This module manages prometheus node collectd_exporter

Parameters

The following parameters are available in the prometheus::collectd_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String[1]]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

options

Data type: String

Options added to the startup command

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the collectd exporter service (default 'collectd_exporter')

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9103

scrape_job_name

Data type: String[1]

Default value: 'collectd'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::config

Configuration class for prometheus monitoring system

prometheus::consul_exporter

This module manages prometheus node consul_exporter

Parameters

The following parameters are available in the prometheus::consul_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

consul_server

Data type: String[1]

HTTP API address of a Consul server or agent. (prefix with https:// to connect over HTTPS) (default "http://localhost:8500")

consul_health_summary

Data type: Boolean

Generate a health summary for each service instance. Needs n+1 queries to collect all information. (default true)

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

extra_groups

Data type: Array

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

log_level

Data type: String[1]

Only log messages with the given severity or above. Valid levels: [debug, info, warn, error, fatal] (default "info")

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the consul exporter service (default 'consul_exporter')

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

web_listen_address

Data type: String[1]

Address to listen on for web interface and telemetry. (default ":9107")

web_telemetry_path

Data type: String[1]

Path under which to expose metrics. (default "/metrics")

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9107

scrape_job_name

Data type: String[1]

Default value: 'consul'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::dellhw_exporter

This module manages prometheus node dellhw_exporter

Parameters

The following parameters are available in the prometheus::dellhw_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

download_extension

Data type: String[1]

Extension for the release binary archive

Default value: 'tar.gz'

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

Default value: 'https://github.com/galexrt/dellhw_exporter/releases'

extra_groups

Data type: Array[String]

Extra groups to add the binary user to

Default value: []

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

Default value: 'dellhw-exporter'

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

Default value: 'present'

package_name

Data type: String[1]

The binary package name - not available yet

Default value: 'dellhw_exporter'

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the dellhw exporter service (default 'dellhw_exporter')

Default value: 'dellhw_exporter'

user

Data type: String[1]

User which runs the service

Default value: 'dellhw-exporter'

version

Data type: String[1]

The binary release version

Default value: '1.6.0'

omreport_path

Data type: Stdlib::Unixpath

The file path to the omReport executable (default "/opt/dell/srvadmin/bin/omreport")

Default value: '/opt/dell/srvadmin/bin/omreport'

scrape_ipadress

Data type: String

The ip address that the exporter will to listen to (default '')

Default value: ''

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9137

scrape_job_name

Data type: String[1]

Default value: 'dellhw'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

bin_name

Data type: Optional[String[1]]

Default value: undef

prometheus::elasticsearch_exporter

This module manages prometheus elasticsearch_exporter

Parameters

The following parameters are available in the prometheus::elasticsearch_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

cnf_uri

Data type: String[1]

The URI to obtain elasticsearch stats from

cnf_timeout

Data type: String[1]

Timeout for trying to get stats from elasticsearch URI

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

extra_groups

Data type: Array

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

use_kingpin

Data type: Boolean

Since version 1.1.0, the elasticsearch exporter uses kingpin, thus this param to define how we call the es.uri and es.timeout in the $options https://github.com/justwatchcom/elasticsearch_exporter/blob/v1.1.0/CHANGELOG.md

service_name

Data type: String[1]

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9114

scrape_job_name

Data type: String[1]

Default value: 'elasticsearch'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::graphite_exporter

This module manages prometheus node graphite_exporter

Parameters

The following parameters are available in the prometheus::graphite_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

options

Data type: String

Options added to the startup command

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the graphite exporter service (default 'graphite_exporter')

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9108

scrape_job_name

Data type: String[1]

Default value: 'graphite'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::grok_exporter

This module manages prometheus grok_exporter

Parameters

The following parameters are available in the prometheus::grok_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: Stdlib::Absolutepath

Directory where binaries are located

Default value: $prometheus::bin_dir

config

Data type: Hash

Hash of configuration, see https://github.com/fstab/grok_exporter/blob/master/CONFIG.md for available options

config_file

Data type: String[1]

Path to config file, it will be generated from config param

config_mode

Data type: String[1]

The permissions of the configuration files

Default value: $prometheus::config_mode

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[Prometheus::Uri]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: Prometheus::Uri

Base URL for the binary archive

extra_groups

Data type: Array[String[1]]

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the node exporter service (default 'grok_exporter')

Default value: 'grok_exporter'

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9144

scrape_job_name

Data type: String[1]

Default value: 'grok'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::haproxy_exporter

This module manages prometheus haproxy_exporter

Parameters

The following parameters are available in the prometheus::haproxy_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: Stdlib::Absolutepath

Directory where binaries are located

Default value: $prometheus::bin_dir

cnf_scrape_uri

Data type: Variant[Stdlib::HTTPUrl, Pattern[/unix:(?:\/.+)+/]]

The URI to obtain HAProxy stats from

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: Prometheus::Uri

Base URL for the binary archive

extra_groups

Data type: Array

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the haproxy exporter service (default 'haproxy_exporter')

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9101

scrape_job_name

Data type: String[1]

Default value: 'haproxy'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::install

Install prometheus via different methods with parameters from init Currently only the install from url is implemented, when Prometheus will deliver packages for some Linux distros I will implement the package install method as well The package method needs specific yum or apt repo settings which are not made yet by the module

prometheus::memcached_exporter

This module manages prometheus node memcached_exporter

Parameters

The following parameters are available in the prometheus::memcached_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

download_extension

Data type: String[1]

Extension for the release binary archive

Default value: 'tar.gz'

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

Default value: 'https://github.com/prometheus/memcached_exporter/releases'

extra_groups

Data type: Array[String]

Extra groups to add the binary user to

Default value: []

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

Default value: 'memcached-exporter'

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

Default value: 'present'

package_name

Data type: String[1]

The binary package name - not available yet

Default value: 'memcached_exporter'

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the memcached exporter service (default 'memcached_exporter')

Default value: 'memcached_exporter'

user

Data type: String[1]

User which runs the service

Default value: 'memcached-exporter'

version

Data type: String[1]

The binary release version

Default value: '0.6.0'

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9150

scrape_job_name

Data type: String[1]

Default value: 'memcached'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

bin_name

Data type: Optional[String[1]]

Default value: undef

prometheus::mesos_exporter

This module manages prometheus mesos_exporter

Parameters

The following parameters are available in the prometheus::mesos_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

server_type

Data type: String[1]

Specify target type master or slave

cnf_scrape_uri

Data type: String[1]

The URI to obtain mesos stats from

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

extra_groups

Data type: Array

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the mesos exporter service (default 'mesos_exporter')

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9105

scrape_job_name

Data type: String[1]

Default value: 'mesos'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::mongodb_exporter

This module manages prometheus mongodb_exporter

Parameters

The following parameters are available in the prometheus::mongodb_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

cnf_uri

Data type: String[1]

The URI to obtain MongoDB stats from

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

extra_groups

Data type: Array

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the mongodb exporter service (default 'mongodb_exporter')

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

use_kingpin

Data type: Boolean

Since version 0.7.0, the mongodb exporter uses kingpin, thus this param to define how we call the mongodb.uri in the $options https://github.com/percona/mongodb_exporter/blob/v0.7.0/CHANGELOG.md

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9216

scrape_job_name

Data type: String[1]

Default value: 'mongodb'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::mysqld_exporter

manages prometheus mysqld_exporter

Parameters

The following parameters are available in the prometheus::mysqld_exporter class.

cnf_config_path

Data type: Stdlib::Absolutepath

The path to put the my.cnf file

Default value: '/etc/.my.cnf'

cnf_host

Data type: Stdlib::Host

The mysql host.

Default value: localhost

cnf_password

Data type: Variant[Sensitive[String],String]

The mysql user password.

Default value: 'password'

cnf_port

Data type: Stdlib::Port

The port for which the mysql host is running.

Default value: 3306

cnf_socket

Data type: Optional[Stdlib::Absolutepath]

The socket which the mysql host is running. If defined, host and port are not used.

Default value: undef

cnf_user

Data type: String[1]

The mysql user to use when connecting.

Default value: login

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: Stdlib::Absolutepath

Directory where binaries are located

Default value: $prometheus::bin_dir

config_mode

Data type: String[1]

The permissions of the configuration files

Default value: $prometheus::config_mode

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[Prometheus::Uri]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: Prometheus::Uri

Base URL for the binary archive

extra_groups

Data type: Array

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the mysqld exporter service (default 'mysqld_exporter')

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9104

scrape_job_name

Data type: String[1]

Default value: 'mysql'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::nginx_vts_exporter

This module manages prometheus nginx_vts_exporter

Parameters

The following parameters are available in the prometheus::nginx_vts_exporter class.

arch

Data type: String

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String

Directory where binaries are located

Default value: $prometheus::bin_dir

nginx_scrape_uri

Data type: String

The URI to obtain nginx JSON stats from

download_extension

Data type: String

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String

Base URL for the binary archive

extra_groups

Data type: Array

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String

Group under which the binary is running

init_style

Data type: String

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: String

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: String

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the nginx-vts exporter service (default 'nginx-vts-exporter')

user

Data type: String

User which runs the service

version

Data type: String

The binary release version

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9913

scrape_job_name

Data type: String[1]

Default value: 'nginx_vts'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::node_exporter

This module manages prometheus node node_exporter

Parameters

The following parameters are available in the prometheus::node_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

collectors

Data type: Optional[Array[String]]

deprecated, unused kept for migration scenatrios will be removed in next release

Default value: undef

collectors_enable

Data type: Array[String]

Collectors to enable, addtionally to the defaults https://github.com/prometheus/node_exporter#enabled-by-default

Default value: []

collectors_disable

Data type: Array[String]

disable collectors which are enabled by default https://github.com/prometheus/node_exporter#enabled-by-default

Default value: []

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

extra_groups

Data type: Array[String]

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the node exporter service (default 'node_exporter')

Default value: 'node_exporter'

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

export_scrape_job

Data type: Boolean

Default value: false

scrape_port

Data type: Stdlib::Port

Default value: 9100

scrape_job_name

Data type: String[1]

Default value: 'node'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

bin_name

Data type: Optional[String[1]]

Default value: undef

prometheus::postfix_exporter

manages prometheus postfix_exporter

Examples

Basic usage
include prometheus::postfix_exporter

Parameters

The following parameters are available in the prometheus::postfix_exporter class.

install_method

Data type: Enum['url','package']

Installation method: url or package. (Note package is not available on most OSes.)

Default value: 'url'

download_url

Data type: Optional[Stdlib::HTTPUrl]

Complete URL corresponding to the where the release can be downloaded. (This option is only relevant when install_method is url.)

Default value: undef

download_url_base

Data type: Stdlib::HTTPUrl

Base URL for the binary archive. (This option is only relevant when install_method is url.)

Default value: 'https://github.com/kumina/postfix_exporter/releases'

download_extension

Data type: String

Extension for the release binary archive. (This option is only relevant when install_method is url.)

Default value: ''

version

Data type: String[1]

The binary release version. (This option is only relevant when install_method is url.)

Default value: '0.2.0'

package_ensure

Data type: String[1]

Used when install_method is package.

Default value: 'installed'

package_name

Data type: String[1]

Used when install_method is package.

Default value: 'postfix_exporter'

manage_user

Data type: Boolean

Whether to create and manage the exporter's user. This can eg. be set to false if your package already creates a user for you.

Default value: true

user

Data type: String[1]

User which runs the service.

Default value: 'postfix-exporter'

manage_group

Data type: Boolean

Whether to create and manage the exporter's group. This can eg. be set to false if your package already creates a group for you.

Default value: true

group

Data type: String[1]

Group to run the service as.

Default value: 'postfix-exporter'

extra_groups

Data type: Array[String[1]]

Extra groups to add the exporter user to.

Default value: []

manage_service

Data type: Boolean

Should puppet manage the service?

Default value: true

init_style

Data type: Optional[Prometheus::Initstyle]

Service startup scripts style. When not set, the correct default for your OS will be used. Can also be set to none when you don't want the class to create a startup script/unit_file for you. Typically this can be used when a package is already providing the file.

Default value: undef

service_name

Data type: String[1]

The name of the service.

Default value: 'postfix_exporter'

service_ensure

Data type: Stdlib::Ensure::Service

Desired state for the service.

Default value: 'running'

service_enable

Data type: Boolean

Whether to enable the service from puppet.

Default value: true

extra_options

Data type: String

Extra options added to the startup command. Override these if you want to monitor a logfile instead of systemd.

Default value: '--systemd.enable --systemd.unit=\'postfix.service\' --postfix.logfile_path=\'\''

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change?

Default value: true

export_scrape_job

Data type: Boolean

Whether to export a prometheus::scrape_job to puppetDB for collecting on your prometheus server.

Default value: false

scrape_port

Data type: Stdlib::Port

The port to use in the scrape job. This won't normally need to be changed unless you run the exporter with a non-default port by overriding extra_options.

Default value: 9154

scrape_job_name

Data type: String[1]

The name of the scrape job. When configuring prometheus with this puppet module, the jobs to be collected are configured with prometheus::collect_scrape_jobs.

Default value: 'postfix'

scrape_job_labels

Data type: Optional[Hash]

Labels to configure on the scrape job. If not set, the prometheus::daemon default ({ 'alias' => $scrape_host }) will be used.

Default value: undef

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

prometheus::postgres_exporter

This module manages prometheus node postgres_exporter

Parameters

The following parameters are available in the prometheus::postgres_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

data_source_custom

Data type: Hash[String[1],String[1]]

Hash of key:value pair to use for alternate environment variables when using param 'postgres_auth_method'

Default value: {}

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

extra_groups

Data type: Array[String[1]]

Extra groups to add the binary user to

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the node exporter service (default 'postgres_exporter')

Default value: 'postgres_exporter'

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

postgres_user

Data type: Optional[String]

User to authenticate against postgres

Default value: undef

postgres_pass

Data type: Optional[String]

Password to authenticate against postgres

Default value: undef

postgres_auth_method

Data type: Enum['custom', 'env', 'file']

method for presenting username and password to the exporter This can be file, or env (default 'env') Using 'custom' requires 'data_source_custom' values

data_source_uri

Data type: String[1]

Uri on howto connect to the database

options

Data type: String

Default value: ''

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9187

scrape_job_name

Data type: String[1]

Default value: 'postgres'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::process_exporter

This module manages prometheus process_exporter

Examples

Usage with hash_watched_processes
class { 'prometheus::process_exporter':
  version                => '0.6.0',
  arch                   => 'amd64',
  os                     => 'linux',
  bin_dir                => '/usr/local/bin',
  install_method         => 'url',
  hash_watched_processes => {
   'process_names' => [
     {
       'name'    => "{{.Matches}}",
       'cmdline' => [".*process1.*"]
     },
     {
       'name'    => "{{.Matches}}",
       'cmdline' => [".*process2.*"]
     }
   ]
 }

Parameters

The following parameters are available in the prometheus::process_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: Stdlib::Absolutepath

Directory where binaries are located

Default value: $prometheus::bin_dir

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[Prometheus::Uri]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: Prometheus::Uri

Base URL for the binary archive

extra_groups

Data type: Array

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the process exporter service (default 'process-exporter')

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

hash_watched_processes

Data type: Hash

A hash of processes to monitor with the ability to pass different options Don't set if you want to use only the Array version of it (watched_processes)

Default value: {}

config_path

Data type: Stdlib::Absolutepath

watched_processes

Data type: Array

Default value: []

config_mode

Data type: String[1]

Default value: $prometheus::config_mode

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9256

scrape_job_name

Data type: String[1]

Default value: 'process'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::puppetdb_exporter

This module manages prometheus node puppetdb_exporter

Parameters

The following parameters are available in the prometheus::puppetdb_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

download_extension

Data type: String[1]

Extension for the release binary archive

Default value: 'tar.gz'

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

Default value: 'https://github.com/camptocamp/prometheus-puppetdb-exporter/releases'

extra_groups

Data type: Array[String]

Extra groups to add the binary user to

Default value: []

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

Default value: 'puppetdb-exporter'

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

Default value: 'present'

package_name

Data type: String[1]

The binary package name - not available yet

Default value: 'puppetdb_exporter'

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the puppetdb exporter service (default 'puppetdb_exporter')

Default value: 'puppetdb_exporter'

user

Data type: String[1]

User which runs the service

Default value: 'puppetdb-exporter'

version

Data type: String[1]

The binary release version

Default value: '1.0.0'

puppetdb_url

Data type: Stdlib::HTTPUrl

The URI to PuppetDB with http/https protocol at the beginning and /pdb/query at the end

Default value: 'http://127.0.0.1:8080/pdb/query'

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9635

scrape_job_name

Data type: String[1]

Default value: 'puppetdb'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

bin_name

Data type: Optional[String[1]]

Default value: undef

prometheus::pushgateway

This module manages prometheus node pushgateway

Parameters

The following parameters are available in the prometheus::pushgateway class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

extra_groups

Data type: Array

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: String[1]

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: $prometheus::os

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the node exporter service (default 'pushgateway')

Default value: 'pushgateway'

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

prometheus::pushprox_client

This module manages prometheus pushprox_client

Parameters

The following parameters are available in the prometheus::pushprox_client class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: Stdlib::Absolutepath

Directory where binaries are located

Default value: $prometheus::bin_dir

config_mode

Data type: String[1]

The permissions of the configuration files

Default value: $prometheus::config_mode

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: Prometheus::Uri

Base URL for the binary archive

extra_groups

Data type: Array[String[1]]

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: String[1]

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: $prometheus::os

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the pushprox_client service (default 'pushprox_client')

Default value: 'pushprox_client'

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

env_vars

Data type: Hash[String, Scalar]

The environment variable to pass to the daemon

Default value: {}

proxy_url

Data type: String[1]

prometheus::pushprox_proxy

This module manages prometheus pushprox_proxy

Parameters

The following parameters are available in the prometheus::pushprox_proxy class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: Stdlib::Absolutepath

Directory where binaries are located

Default value: $prometheus::bin_dir

config_mode

Data type: String[1]

The permissions of the configuration files

Default value: $prometheus::config_mode

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: Prometheus::Uri

Base URL for the binary archive

extra_groups

Data type: Array[String[1]]

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $prometheus::init_style

install_method

Data type: String[1]

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: $prometheus::os

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the pushprox_proxy service (default 'pushprox_proxy')

Default value: 'pushprox_proxy'

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

prometheus::rabbitmq_exporter

This module manages prometheus rabbitmq_exporter

Parameters

The following parameters are available in the prometheus::rabbitmq_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

extra_groups

Data type: Array[String]

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the rabbitmq exporter service (default 'rabbitmq_exporter')

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

rabbit_url

Data type: String[1]

URL of the RabbitMQ management plugin

rabbit_user

Data type: String[1]

User to authenticate against RabbitMQ

rabbit_password

Data type: String[1]

Password to authenticate against RabbitMQ

queues_include_regex

Data type: String[1]

Regular expression used by the exported to chose which queues to export

queues_exclude_regex

Data type: String[1]

Regular expression used by the exported to chose which queues NOT to export

rabbit_capabilities

Data type: Array[String]

Special capabilities supported by the RabbitMQ version. See README for more details. (default '')

rabbit_exporters

Data type: Array[String]

Which exporter modules should be loaded by default (default 'exchange,node,overview,queue')

extra_env_vars

Data type: Hash[String,String]

Additional environment variables that should be supplied to the exporter, as a hash of key:value (default {})

Default value: {}

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9090

scrape_job_name

Data type: String[1]

Default value: 'rabbitmq'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::redis_exporter

This module manages prometheus node redis_exporter

Parameters

The following parameters are available in the prometheus::redis_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

addr

Data type: Array[String]

Array of address of one or more redis nodes. Defaults to redis://localhost:6379

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

extra_groups

Data type: Array[String]

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command For a full list of the exporter's supported extra options please refer to https://github.com/oliver006/redis_exporter

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

namespace

Data type: String[1]

Namespace for the metrics, defaults to redis.

Default value: 'redis'

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the node exporter service (default 'redis_exporter')

Default value: 'redis_exporter'

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9121

scrape_job_name

Data type: String[1]

Default value: 'redis'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::run_service

This class is meant to be called from prometheus. It ensure the service is running

prometheus::server

class to manage the actual prometheus server. This class gets called from the init.pp

Parameters

The following parameters are available in the prometheus::server class.

configname

Data type: String

Default value: $prometheus::configname

user

Data type: String

Default value: $prometheus::user

group

Data type: String

Default value: $prometheus::group

extra_groups

Data type: Array

Default value: $prometheus::extra_groups

bin_dir

Data type: Stdlib::Absolutepath

Default value: $prometheus::bin_dir

shared_dir

Data type: Stdlib::Absolutepath

Default value: $prometheus::shared_dir

version

Data type: String

Default value: $prometheus::version

install_method

Data type: String

Default value: $prometheus::install_method

download_url_base

Data type: Prometheus::Uri

Default value: $prometheus::download_url_base

download_extension

Data type: String

Default value: $prometheus::download_extension

package_name

Data type: String

Default value: $prometheus::package_name

package_ensure

Data type: String

Default value: $prometheus::package_ensure

config_dir

Data type: String

Default value: $prometheus::config_dir

localstorage

Data type: Stdlib::Absolutepath

Default value: $prometheus::localstorage

config_template

Data type: String

Default value: $prometheus::config_template

config_mode

Data type: String

Default value: $prometheus::config_mode

global_config

Data type: Hash

Default value: $prometheus::global_config

rule_files

Data type: Array

Default value: $prometheus::rule_files

scrape_configs

Data type: Array

Default value: $prometheus::scrape_configs

remote_read_configs

Data type: Array

Default value: $prometheus::remote_read_configs

remote_write_configs

Data type: Array

Default value: $prometheus::remote_write_configs

alerts

Data type: Variant[Array,Hash]

Default value: $prometheus::alerts

alert_relabel_config

Data type: Array

Default value: $prometheus::alert_relabel_config

alertmanagers_config

Data type: Array

Default value: $prometheus::alertmanagers_config

storage_retention

Data type: String

Default value: $prometheus::storage_retention

env_file_path

Data type: Stdlib::Absolutepath

Default value: $prometheus::env_file_path

extra_alerts

Data type: Hash

Default value: $prometheus::extra_alerts

service_enable

Data type: Boolean

Default value: $prometheus::service_enable

service_ensure

Data type: Stdlib::Ensure::Service

Default value: $prometheus::service_ensure

service_name

Data type: String[1]

Default value: $prometheus::service_name

manage_service

Data type: Boolean

Default value: $prometheus::manage_service

restart_on_change

Data type: Boolean

Default value: $prometheus::restart_on_change

init_style

Data type: Prometheus::Initstyle

Default value: $facts['service_provider']

extra_options

Data type: Optional[String[1]]

Default value: $prometheus::extra_options

config_hash

Data type: Hash

Default value: $prometheus::config_hash

config_defaults

Data type: Hash

Default value: $prometheus::config_defaults

os

Data type: String[1]

Default value: $prometheus::os

download_url

Data type: Optional[String]

Default value: $prometheus::download_url

arch

Data type: String[1]

Default value: $prometheus::real_arch

manage_group

Data type: Boolean

Default value: $prometheus::manage_group

purge_config_dir

Data type: Boolean

Default value: $prometheus::purge_config_dir

manage_user

Data type: Boolean

Default value: $prometheus::manage_user

manage_config

Data type: Boolean

Default value: $prometheus::manage_config

external_url

Data type: Optional[Variant[Stdlib::HTTPurl, Stdlib::Unixpath, String[1]]]

Default value: $prometheus::external_url

collect_scrape_jobs

Data type: Optional[Array[Hash[String[1], Any]]]

Default value: $prometheus::collect_scrape_jobs

collect_tag

Data type: Optional[String[1]]

Default value: $prometheus::collect_tag

max_open_files

Data type: Optional[Integer]

Default value: $prometheus::max_open_files

usershell

Data type: Stdlib::Absolutepath

Default value: $prometheus::usershell

prometheus::snmp_exporter

This module manages prometheus snmp_exporter

Parameters

The following parameters are available in the prometheus::snmp_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: String[1]

Directory where binaries are located

Default value: $prometheus::bin_dir

config_file

Data type: String[1]

Absolute path to configuration file

config_mode

Data type: String[1]

Configuration file mode (default 0660)

Default value: $prometheus::config_mode

config_template

Data type: String

Configuration template to use. If empty, uses upstream config (default "")

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: String[1]

Base URL for the binary archive

extra_groups

Data type: Array

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the snmp exporter service (default 'snmp_exporter')

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9116

scrape_job_name

Data type: String[1]

Default value: 'snmp'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::statsd_exporter

This module manages prometheus statsd_exporter

Parameters

The following parameters are available in the prometheus::statsd_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: Stdlib::Absolutepath

Directory where binaries are located

Default value: $prometheus::bin_dir

config_mode

Data type: String[1]

The permissions of the configuration files

Default value: $prometheus::config_mode

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[Prometheus::Uri]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: Prometheus::Uri

Base URL for the binary archive

extra_groups

Data type: Array

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the statsd exporter service (default 'statsd_exporter')

mappings

Data type: Array[Hash]

The hiera array for mappings:

  • map: 'test.dispatcher...*' name: 'dispatcher_events_total' labels: processor: '$2' action: '$1'
user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

mapping_config_path

Data type: Stdlib::Absolutepath

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9102

scrape_job_name

Data type: String[1]

Default value: 'statsd'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

prometheus::varnish_exporter

This module manages prometheus varnish_exporter

Parameters

The following parameters are available in the prometheus::varnish_exporter class.

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: Stdlib::Absolutepath

Directory where binaries are located

Default value: $prometheus::bin_dir

download_extension

Data type: String[1]

Extension for the release binary archive

download_url

Data type: Optional[String]

Complete URL corresponding to the where the release binary archive can be downloaded

Default value: undef

download_url_base

Data type: Prometheus::Uri

Base URL for the binary archive

extra_groups

Data type: Array

Extra groups to add the binary user to

extra_options

Data type: String

Extra options added to the startup command

Default value: ''

group

Data type: String[1]

Group under which the binary is running

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd)

Default value: $facts['service_provider']

install_method

Data type: Prometheus::Install

Installation method: url or package (only url is supported currently)

Default value: $prometheus::install_method

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: downcase($facts['kernel'])

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'latest'

package_name

Data type: String[1]

The binary package name - not available yet

purge_config_dir

Data type: Boolean

Purge config files no longer generated by Puppet

Default value: true

restart_on_change

Data type: Boolean

Should puppet restart the service on configuration change? (default true)

Default value: true

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_name

Data type: String[1]

Name of the varnish exporter service (default 'varnish_exporter')

user

Data type: String[1]

User which runs the service

version

Data type: String[1]

The binary release version

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Optional[Stdlib::Host]

Default value: undef

scrape_port

Data type: Stdlib::Port

Default value: 9131

scrape_job_name

Data type: String[1]

Default value: 'varnish'

scrape_job_labels

Data type: Optional[Hash]

Default value: undef

Defined types

prometheus::alerts

This module manages prometheus alert files for prometheus

Parameters

The following parameters are available in the prometheus::alerts defined type.

alerts

Data type: Variant[Array,Hash]

Array (< prometheus 2.0.0) or Hash (>= prometheus 2.0.0) of alerts (see README).

location

Data type: String[1]

Where to create the alert file for prometheus

Default value: "${prometheus::config_dir}/rules"

version

Data type: String[1]

Default value: $prometheus::version

user

Data type: String[1]

Default value: $prometheus::user

group

Data type: String[1]

Default value: $prometheus::group

bin_dir

Data type: String[1]

Default value: $prometheus::bin_dir

prometheus::daemon

This define managed prometheus daemons that don't have their own class

Parameters

The following parameters are available in the prometheus::daemon defined type.

version

Data type: String[1]

The binary release version

real_download_url

Data type: Prometheus::Uri

Complete URL corresponding to the where the release binary archive can be downloaded

notify_service

Data type: Any

The service to notify when something changes in this define

user

Data type: String[1]

User which runs the service

install_method

Data type: Prometheus::Install

Installation method: url or package

Default value: $prometheus::install_method

download_extension

Data type: String

Extension for the release binary archive

Default value: $prometheus::download_extension

os

Data type: String[1]

Operating system (linux is the only one supported)

Default value: $prometheus::os

arch

Data type: String[1]

Architecture (amd64 or i386)

Default value: $prometheus::real_arch

bin_dir

Data type: Stdlib::Absolutepath

Directory where binaries are located

Default value: $prometheus::bin_dir

bin_name

Data type: String[1]

The name of the binary to execute

Default value: $name

package_name

Data type: Optional[String]

The binary package name

Default value: undef

package_ensure

Data type: String[1]

If package, then use this for package ensure default 'installed'

Default value: 'installed'

manage_user

Data type: Boolean

Whether to create user or rely on external code for that

Default value: true

extra_groups

Data type: Array

Extra groups of which the user should be a part

Default value: []

manage_group

Data type: Boolean

Whether to create a group for or rely on external code for that

Default value: true

service_ensure

Data type: Stdlib::Ensure::Service

State ensured for the service (default 'running')

Default value: 'running'

service_enable

Data type: Boolean

Whether to enable the service from puppet (default true)

Default value: true

manage_service

Data type: Boolean

Should puppet manage the service? (default true)

Default value: true

extract_command

Data type: Optional[String[1]]

Custom command passed to the archive resource to extract the downloaded archive.

Default value: $prometheus::extract_command

extract_path

Data type: Stdlib::Absolutepath

Path where to find extracted binary

Default value: '/opt'

archive_bin_path

Data type: Stdlib::Absolutepath

Path to the binary in the downloaded archive.

Default value: "/opt/${name}-${version}.${os}-${arch}/${name}"

init_style

Data type: Prometheus::Initstyle

Service startup scripts style (e.g. rc, upstart or systemd). Can also be set to none when you don't want the class to create a startup script/unit_file for you. Typically this can be used when a package is already providing the file.

Default value: $facts['service_provider']

group

Data type: String[1]

purge

Data type: Boolean

Default value: true

options

Data type: String

Default value: ''

env_vars

Data type: Hash[String, Scalar]

Default value: {}

env_file_path

Data type: Optional[String]

Default value: $prometheus::env_file_path

export_scrape_job

Data type: Boolean

Default value: false

scrape_host

Data type: Stdlib::Host

Default value: $facts['networking']['fqdn']

scrape_port

Data type: Optional[Stdlib::Port]

Default value: undef

scrape_job_name

Data type: String[1]

Default value: $name

scrape_job_labels

Data type: Hash

Default value: { 'alias' => $scrape_host }

usershell

Data type: Stdlib::Absolutepath

Default value: $prometheus::usershell

prometheus::scrape_job

This define is used to export prometheus scrape settings from nodes to be scraped to the node running prometheus itself. This can be used to make prometheus find instances of your running service or application.

Parameters

The following parameters are available in the prometheus::scrape_job defined type.

job_name

Data type: String[1]

The name of the scrape job. This will be used when collecting resources on the prometheus node. Corresponds to the prometheus::collect_scrape_jobs parameter.

targets

Data type: Array[String[1]]

Array of hosts and ports in the form "host:port"

labels

Data type: Hash[String[1], String[1]]

Labels added to the scraped metrics on the prometheus side, as label:values pairs

Default value: {}

collect_dir

Data type: Stdlib::Absolutepath

Directory used for collecting scrape definitions. NOTE: this is a prometheus setting and will be overridden during collection.

Default value: undef

Data types

Prometheus::GsUri

The Prometheus::GsUri data type.

Alias of Pattern[/^gs:\/\//]

Prometheus::Initstyle

The Prometheus::Initstyle data type.

Alias of Enum['sysv', 'redhat', 'systemd', 'sles', 'debian', 'launchd', 'upstart', 'none']

Prometheus::Install

type to enforce the different installation methods for our exporters.

Alias of Enum['url', 'package', 'none']

Prometheus::S3Uri

The Prometheus::S3Uri data type.

Alias of Pattern[/^s3:\/\//]

Prometheus::Uri

The Prometheus::Uri data type.

Alias of Variant[Stdlib::HTTPUrl, Stdlib::HTTPSUrl, Prometheus::S3Uri, Prometheus::GsUri]