]> git.openstreetmap.org Git - chef.git/blob - cookbooks/prometheus/templates/default/prometheus.yml.erb
Add some more prometheus alerts
[chef.git] / cookbooks / prometheus / templates / default / prometheus.yml.erb
1 # DO NOT EDIT - This file is being maintained by Chef
2
3 global:
4   scrape_interval: 15s
5   evaluation_interval: 15s
6
7 alerting:
8   alertmanagers:
9     - path_prefix: /alertmanager
10       static_configs:
11         - targets:
12             - localhost:9093
13
14 rule_files:
15   - /etc/prometheus/*_rules.yml
16
17 scrape_configs:
18   - job_name: prometheus
19     scrape_interval: 5s
20     scrape_timeout: 5s
21     metrics_path: /prometheus/metrics
22     static_configs:
23       - targets:
24           - localhost:9090
25   - job_name: alertmanager
26     metrics_path: /alertmanager/metrics
27     static_configs:
28       - targets:
29           - localhost:9093
30   - job_name: ssl
31     scrape_interval: 15m
32     metrics_path: /probe
33     static_configs:
34 <% @certificates.values.sort_by { |c| c[:domains].first }.each do |certificate| -%>
35       - targets:
36 <% certificate[:nodes].sort_by { |h| h[:name] }.each do |host| -%>
37           - <%= certificate[:domains].first %>/<%= host[:name] %>:443
38 <% end -%>
39         labels:
40           domain: <%= certificate[:domains].first %>
41 <% end -%>
42     relabel_configs:
43       - source_labels: [__address__]
44         regex: "([^/]+)/.*"
45         target_label: __param_module
46       - source_labels: [__address__]
47         regex: "[^/]+/(.*)"
48         target_label: __param_target
49       - source_labels: [__param_target]
50         regex: "([^.]+)\\..*"
51         target_label: instance
52       - target_label: __address__
53         replacement: 127.0.0.1:9219
54 <% @jobs.sort.each do |name, targets| -%>
55   - job_name: <%= name %>
56     static_configs:
57 <% targets.each do |target| -%>
58       - targets:
59           - "<%= target[:address] %>"
60         labels:
61           instance: <%= target[:instance] %>
62 <% end -%>
63     metric_relabel_configs:
64 <% targets.each do |target| -%>
65 <% target[:metric_relabel].each do |relabel| -%>
66       - source_labels: [instance,<%= relabel[:source_labels] %>]
67         regex: "<%= target[:instance] %>;<%= relabel[:regex] %>"
68         action: <%= relabel[:action] %>
69 <% end -%>
70 <% end -%>
71 <% end -%>
72
73 remote_write:
74   - url: "http://localhost:9201/write"
75     write_relabel_configs:
76       - source_labels: [__name__]
77         regex: "go_.*"
78         action: drop
79       - source_labels: [__name__]
80         regex: "promhttp_.*"
81         action: drop
82     queue_config:
83       capacity: 10000
84       min_shards: 4
85       batch_send_deadline: 30s
86       max_backoff: 1s