GitHub puppet-prometheus
49
49
48
Puppet module for prometheus

Metadata Valid
No translation
Correct Puppet Version Range
Supported Puppet version range is %{PUPPET_VERSION_RANGE}
With Puppet Version Range
Puppet version range is present in requirements in metadata.json
With Operatingsystem Support
No translation
Supports Only Current Centos
No translation
Supports Latest Centos
No translation
Supports Only Current Debian
No translation
Supports Latest Debian
No translation
Supports Only Current Ubuntu
No translation
Supports Latest Ubuntu
No translation
In Modulesync Repo
No translation
In Plumbing
Is in plumbing
Has Secrets
Has a .sync.yml file
Synced
Has a .msync.yml file
Latest Modulesync
No translation
Has Modulesync
Is present in voxpupuli/modulesync_config/managed_modules.yml
Released
Is in modulesync_config and in forge releases.
Reference Dot Md
The repository has a REFERENCE.md. It needs to be generated / puppet-strings documentation is missing.

Open Pull Requests

allow specifying services that should start before the exporter daemon
merge-conflicts
needs-work
tests-fail

Pull Request (PR) description

Allow specifying other services that should be started prior to the exporter daemon starting up in systemd. This is to handle situations where you want the service being monitored to be started before the exporter.

This Pull Request (PR) fixes the following issues

N/A (new feature)

Add prometheus node-exporter name for Ubuntu
tests-fail

<!--
Thank you for contributing to this project!

-->

Pull Request (PR) description

Add package prometheus-node-exporter package name for Debian.

This Pull Request (PR) fixes the following issues

Installation on Ubuntu 18.04

feat(daemon): be able to use another systemd-module
enhancement
merge-conflicts
needs-docs
needs-tests
tests-fail

Pull Request (PR) description

  • feat(daemon): be able to use another systemd-module
  • feat(node_exporter): be able to use another systemd-module

This Pull Request (PR) fixes the following issues

n/a

added ability for config file content to be specified for process_exp…
merge-conflicts
needs-work

…orter

<!--
Thank you for contributing to this project!

-->

Pull Request (PR) description

<!--
Replace this comment with a description of your pull request.
-->

This Pull Request (PR) fixes the following issues

<!--
Replace this comment with the list of issues or n/a.
Use format:
Fixes #123
Fixes #124
-->

Add parameter user / group for ressource archive
backwards-incompatible
tests-fail

Fixes #448

WIP: Fix for the #434 dependency cycle
tests-fail

Fixes #434

Note: this PR is still Work-In-Progress as I have not tested all edge cases but it does work. Perhaps you have the time to take a look on your side and maybe your will either immediately tell me that is totally wrong or the other way around. I will get back to this when I will have more time.

allow to set env_vars for blackbox exporter
needs-tests

Pull Request (PR) description

This PR is intended to allow environment variables to be set for the blackbox exporter.
This can be useful, for example, if you want to use SSL_CERT_FILE.

This Pull Request (PR) fixes the following issues

Fixes #535

fix syntax of altermanager::receivers
bug
needs-tests

The "name" block is an object. This actually matches the example in
prometheus::alertmanager's documentation:

```

@param receivers

An array of receivers.

Example (also default):

prometheus::alertmanager::receivers:

- name: 'Admin'

email_configs:

- to: 'root@localhost'

```

I wonder why unit tests didn't catch those...?

Closes: #539

mongodb_exporter: Add acceptance tests
tests-fail
needs-rebase

<!--
Thank you for contributing to this project!

-->

Pull Request (PR) description

<!--
Replace this comment with a description of your pull request.
-->

This Pull Request (PR) fixes the following issues

<!--
Replace this comment with the list of issues or n/a.
Use format:
Fixes #123
Fixes #124
-->

add `timeout_stop` to control systemd `TimeoutStopSec`
enhancement
needs-rebase

Pull Request (PR) description

With larger WAL segments, prometheus fails to write
a new checkpoint in TimeoutStopSec time:


Oct 03 15:13:37 prometheus prometheus[2452]: level=info ts=2020-10-03T15:13:37.751Z caller=checkpoint.go:96 component=tsdb msg="Creating checkpoint" from_segment=85417 to_segment=85677 mint
Oct 03 15:15:06 prometheus systemd[1]: prometheus.service: State 'stop-sigterm' timed out. Killing.
Oct 03 15:15:06 prometheus systemd[1]: prometheus.service: Killing process 2452 (prometheus) with signal SIGKILL.
Oct 03 15:15:06 prometheus systemd[1]: prometheus.service: Main process exited, code=killed, status=9/KILL
Oct 03 15:15:06 prometheus systemd[1]: prometheus.service: Failed with result 'timeout'.
Oct 03 15:15:06 prometheus systemd[1]: Stopped Prometheus Monitoring framework.

This change adds a new parameter to define TimeoutStopSec
for prometheus.service.

This Pull Request (PR) fixes the following issues

No issue previously created.

The required systemd unitfile overwrite could have been made locally as well - but as I suppose that others could also face similar issues, I decided to implement the parameter directly.

Rename exporters to prometheus::exporter::$EXPORTER
backwards-incompatible
merge-conflicts

This is the result of using sed + rename. Untested, may eat your dog etc.

WIP: data/Debian.yaml, add package- and service-names for Debian-based prometheus-packages
tests-fail

Together with #430 this PR adapts the Debian-defaults regarding package- and service-names like they are actually present in Debian. e.g. all exporters are prefixed with prometheus-.

https://packages.debian.org/search?keywords=prometheus&searchon=names&suite=stable&section=all

```bash
user@host:~$ for A in $(apt-cache search prometheus- | awk '{ print $1 }' | xargs); do apt-file show $A 2>&1 | grep -E '(systemd/system)'; done
prometheus-alertmanager: /lib/systemd/system/prometheus-alertmanager.service
prometheus-apache-exporter: /lib/systemd/system/prometheus-apache-exporter.service
prometheus-bind-exporter: /lib/systemd/system/prometheus-bind-exporter.service
prometheus-bird-exporter: /lib/systemd/system/prometheus-bird-exporter.service
prometheus-blackbox-exporter: /lib/systemd/system/prometheus-blackbox-exporter.service
prometheus-haproxy-exporter: /lib/systemd/system/prometheus-haproxy-exporter.service
prometheus-mongodb-exporter: /lib/systemd/system/prometheus-mongodb-exporter.service
prometheus-mysqld-exporter: /lib/systemd/system/prometheus-mysqld-exporter.service
prometheus-nginx-exporter: /lib/systemd/system/prometheus-nginx-exporter.service
prometheus-node-exporter: /lib/systemd/system/prometheus-node-exporter-apt.service
prometheus-node-exporter: /lib/systemd/system/prometheus-node-exporter-apt.timer
prometheus-node-exporter: /lib/systemd/system/prometheus-node-exporter-ipmitool-sensor.service
prometheus-node-exporter: /lib/systemd/system/prometheus-node-exporter-ipmitool-sensor.timer
prometheus-node-exporter: /lib/systemd/system/prometheus-node-exporter-mellanox-hca-temp.service
prometheus-node-exporter: /lib/systemd/system/prometheus-node-exporter-mellanox-hca-temp.timer
prometheus-node-exporter: /lib/systemd/system/prometheus-node-exporter-smartmon.service
prometheus-node-exporter: /lib/systemd/system/prometheus-node-exporter-smartmon.timer
prometheus-node-exporter: /lib/systemd/system/prometheus-node-exporter.service
prometheus-pgbouncer-exporter: /lib/systemd/system/prometheus-pgbouncer-exporter.service
prometheus-postgres-exporter: /lib/systemd/system/prometheus-postgres-exporter.service
prometheus-process-exporter: /lib/systemd/system/prometheus-process-exporter.service
prometheus-pushgateway: /lib/systemd/system/prometheus-pushgateway.service
prometheus-snmp-exporter: /lib/systemd/system/prometheus-snmp-exporter.service
prometheus-sql-exporter: /lib/systemd/system/prometheus-sql-exporter.service
prometheus-squid-exporter: /lib/systemd/system/prometheus-squid-exporter.service
prometheus-varnish-exporter: /lib/systemd/system/prometheus-varnish-exporter.service
prometheus-xmpp-alerts: /lib/systemd/system/prometheus-xmpp-alerts.service

```

Allow default scrape_configs to be optional

<!--
Thank you for contributing to this project!

-->

Pull Request (PR) description

<!--
Replace this comment with a description of your pull request.
-->
Allow the default scrape configs for Prometheus to be disabled.

In my environment I will make use of this in Hiera


lookup_options:
prometheus::scrape_configs:
merge: unique

With the above and current module behavior, I would be forced to use this module's default scrape config for Prometheus which I don't want because we define the Prometheus scrape config differently. This pull request allows for not including that default scrape config so that something like Hiera merging isn't forced to use this module's scrape config.

Support Stdlib Filesource as type for download urls

<!--
Thank you for contributing to this project!

-->

Pull Request (PR) description

It's desirable to be able to specify Puppet fileserver urls (puppet://...) as the download_url for exporters in cases where exporter releases are mirrored internally to avoid reliance on reaching the internet.

This Pull Request (PR) fixes the following issues

n/a

Support mute_time_intervals for Alertmanager
enhancement
tests-fail

<!--
Thank you for contributing to this project!

-->

Pull Request (PR) description

Support mutetimeintervals for Alertmanager config

This Pull Request (PR) fixes the following issues

If user defines something like:

prometheus::alertmanager::mute_time_intervals:
- name: business_hours
time_intervals:
- weekdays: [ 'monday','tuesday','friday' ]
times:
- start_time: '16:00'
end_time: '23:59'
- start_time: '00:00'
end_time: '07:00'

it won't be picked up, and therefore create a configuration error on other places "missing definition for business_hours".