From 7dea0e4f4eac55811a5f8b83845efbbf2eff0df5 Mon Sep 17 00:00:00 2001 From: Kazuhiro MUSASHI Date: Sun, 27 Sep 2020 14:03:13 +0900 Subject: [PATCH] Collect `filestat_exporter` metrics. --- cookbooks/prometheus/alertmanager_setup.rb | 2 +- .../files/etc/prometheus.d/alerts/filestat.yml | 12 ++++++++++++ .../prometheus/files/etc/prometheus.d/prometheus.yml | 9 +++++++++ 3 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 cookbooks/prometheus/files/etc/prometheus.d/alerts/filestat.yml diff --git a/cookbooks/prometheus/alertmanager_setup.rb b/cookbooks/prometheus/alertmanager_setup.rb index 2620ea7..6968d62 100644 --- a/cookbooks/prometheus/alertmanager_setup.rb +++ b/cookbooks/prometheus/alertmanager_setup.rb @@ -17,7 +17,7 @@ remote_file '/etc/prometheus.d/alertmanager.yml' do end # Deploy alert setting file: -%w(node_exporter prometheus).each do |conf| +%w(node_exporter prometheus filestat).each do |conf| remote_file "/etc/prometheus.d/alerts/#{conf}.yml" do owner 'root' group 'root' diff --git a/cookbooks/prometheus/files/etc/prometheus.d/alerts/filestat.yml b/cookbooks/prometheus/files/etc/prometheus.d/alerts/filestat.yml new file mode 100644 index 0000000..5579b21 --- /dev/null +++ b/cookbooks/prometheus/files/etc/prometheus.d/alerts/filestat.yml @@ -0,0 +1,12 @@ +groups: +- name: filestat + rules: + - alert: RebootRequired + expr: file_glob_match_number{pattern="/var/run/reboot-required"} > 0 + for: 24h + labels: + severity: warning + annotations: + summary: "Instance {{ $labels.instance }} requires rebooting." + description: "{{ $labels.instance }} requires rebooting." + diff --git a/cookbooks/prometheus/files/etc/prometheus.d/prometheus.yml b/cookbooks/prometheus/files/etc/prometheus.d/prometheus.yml index df63eec..7a85099 100644 --- a/cookbooks/prometheus/files/etc/prometheus.d/prometheus.yml +++ b/cookbooks/prometheus/files/etc/prometheus.d/prometheus.yml @@ -14,6 +14,7 @@ rule_files: # - "first.rules" # - "second.rules" - '/etc/prometheus.d/alerts/node_exporter.yml' + - '/etc/prometheus.d/alerts/filestat.yml' - '/etc/prometheus.d/alerts/prometheus.yml' # A scrape configuration containing exactly one endpoint to scrape: @@ -51,6 +52,14 @@ scrape_configs: services: - 'node_exporter' + - job_name: 'filestat' + metrics_path: /filestat_exporter/metrics + + consul_sd_configs: + - server: 'localhost:8500' + services: + - 'filestat_exporter' + - job_name: 'grafana' consul_sd_configs: - server: 'localhost:8500'