]> git.openstreetmap.org Git - chef.git/blob - cookbooks/munin/templates/default/munin.conf.erb
79bdbda9a4b2c3f592c5e24bf38b8f58fa70b4a3
[chef.git] / cookbooks / munin / templates / default / munin.conf.erb
1 # DO NOT EDIT - This file is being maintained by Chef
2
3 # Set maximum number of update processes to run at once
4 max_processes 64
5
6 # Maximum number of graphs to generate at once
7 max_graph_jobs 24
8 max_cgi_graph_jobs 24
9
10 # Render pages and graphs on demand
11 html_strategy cgi
12 graph_strategy cgi
13
14 # Use rrdcached
15 rrdcached_socket /var/run/rrdcached.sock
16
17 # Configure alert targets
18 contact.admins.command mail -s "Munin Notification for ${var:host}" admins@openstreetmap.org
19 contact.admins.always_send invalid
20 contact.null.command cat > /dev/null
21 contact.null.always_send invalid
22
23 # Send alerts to the admins by default
24 contacts admins
25
26 # Ignore uncontactable hosts for twelve hours
27 unknown_limit 144
28 <% @clients.sort { |a,b| a[:hostname] <=> b[:hostname] }.each do |client| -%>
29
30 # Configure monitoring for <%= client[:fqdn] %>
31 [<%= client[:hostname] %>.openstreetmap]
32 <% if Time.now - Time.at(client[:ohai_time]) > @expiry_time -%>
33     update no
34 <% end -%>
35 <% if client[:networking][:roles][:external][:zone] == "ucl" -%>
36     address <%= client.internal_ipaddress || client.external_ipaddress %>
37 <% elsif client[:networking][:roles][:external][:zone] == "ic" -%>
38     address <%= client.internal_ipaddress || client.external_ipaddress %>
39 <% elsif client[:networking][:roles][:external][:zone] == "bm" -%>
40     address <%= client.internal_ipaddress || client.external_ipaddress %>
41 <% elsif client.external_ipaddress -%>
42     address <%= client.external_ipaddress %>
43 <% end -%>
44     use_node_name yes
45 <% if client[:munin][:plugins] -%>
46 <% client[:munin][:plugins].keys.sort.each do |plugin| -%>
47 <% client[:munin][:plugins][plugin].keys.sort.each do |value| -%>
48 <% if client[:munin][:plugins][plugin][value].kind_of?(Hash) -%>
49 <% if client[:munin][:plugins][plugin][value][:graph] -%>
50     <%= plugin %>.<%= value %>.graph <%= client[:munin][:plugins][plugin][value][:graph] %>
51 <% end -%>
52 <% if client[:munin][:plugins][plugin][value][:label] -%>
53     <%= plugin %>.<%= value %>.label <%= client[:munin][:plugins][plugin][value][:label] %>
54 <% end -%>
55 <% if client[:munin][:plugins][plugin][value][:warning] -%>
56     <%= plugin %>.<%= value %>.warning <%= client[:munin][:plugins][plugin][value][:warning] %>
57 <% end -%>
58 <% if client[:munin][:plugins][plugin][value][:critical] -%>
59     <%= plugin %>.<%= value %>.critical <%= client[:munin][:plugins][plugin][value][:critical] %>
60 <% end -%>
61 <% else -%>
62     <%= plugin %>.<%= value %> <%= client[:munin][:plugins][plugin][value] %>
63 <% end -%>
64 <% end -%>
65 <% end -%>
66 <% end -%>
67 <% if client[:munin][:graphs] -%>
68 <% client[:munin][:graphs].keys.sort.each do |graph| -%>
69 <% if client[:munin][:graphs][graph][:title] -%>
70     <%= graph %>.graph_title <%= client[:munin][:graphs][graph][:title] %>
71 <% end -%>
72 <% if client[:munin][:graphs][graph][:vlabel] -%>
73     <%= graph %>.graph_vlabel <%= client[:munin][:graphs][graph][:vlabel] %>
74 <% end -%>
75 <% if client[:munin][:graphs][graph][:category] -%>
76     <%= graph %>.graph_category <%= client[:munin][:graphs][graph][:category] %>
77 <% end -%>
78 <% client[:munin][:graphs][graph][:values].keys.sort.each do |value| -%>
79 <% if client[:munin][:graphs][graph][:values][value][:sum] -%>
80     <%= graph %>.<%= value %>.sum <%= client[:munin][:graphs][graph][:values][value][:sum].join(" ") %>
81 <% end -%>
82 <% if client[:munin][:graphs][graph][:values][value][:label] -%>
83     <%= graph %>.<%= value %>.label <%= client[:munin][:graphs][graph][:values][value][:label] %>
84 <% end -%>
85 <% end -%>
86 <% end -%>
87 <% end -%>
88 <% end -%>
89
90 # Configure compound graphs for www.openstreetmap.org
91 [www.openstreetmap]
92     update no
93     apache_accesses.graph_title Apache accesses
94     apache_accesses.graph_vlabel accesses / ${graph_period}
95     apache_accesses.graph_category apache
96     apache_accesses.accesses80.sum <%= Chef::Munin.expand "%%.openstreetmap:apache_accesses.accesses80", @frontends %>
97     apache_accesses.accesses80.label port 80
98     apache_volume.graph_title Apache volume
99     apache_volume.graph_vlabel bytes per ${graph_period}
100     apache_volume.graph_category apache
101     apache_volume.volume80.sum <%= Chef::Munin.expand "%%.openstreetmap:apache_volume.volume80", @frontends %>
102     apache_volume.volume80.label port 80
103     if_eth0.graph_title eth0 traffic
104     if_eth0.graph_vlabel bits in (-) / out (+) per ${graph_period}
105     if_eth0.graph_category network
106     if_eth0.graph_order down up
107     if_eth0.down.sum <%= Chef::Munin.expand "%%.openstreetmap:if_eth0.down", @frontends %>
108     if_eth0.down.label received
109     if_eth0.down.cdef down,8,*
110     if_eth0.up.sum <%= Chef::Munin.expand "%%.openstreetmap:if_eth0.up", @frontends %>
111     if_eth0.up.label sent
112     if_eth0.up.cdef up,8,*
113     if_eth1.graph_title eth1 traffic
114     if_eth1.graph_vlabel bits in (-) / out (+) per ${graph_period}
115     if_eth1.graph_category network
116     if_eth1.graph_order down up
117     if_eth1.down.sum <%= Chef::Munin.expand "%%.openstreetmap:if_eth1.down", @frontends %>
118     if_eth1.down.label received
119     if_eth1.down.cdef down,8,*
120     if_eth1.up.sum <%= Chef::Munin.expand "%%.openstreetmap:if_eth1.up", @frontends %>
121     if_eth1.up.label sent
122     if_eth1.up.cdef up,8,*
123     api_calls_www.graph_title Active requests
124     api_calls_www.graph_vlabel Number of requests
125     api_calls_www.graph_category api
126     api_calls_www.graph_order map upload amf history full trkpts web other
127     api_calls_www.web.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_%%%.web", @frontends %>
128     api_calls_www.web.label Web site traffic
129     api_calls_www.upload.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_%%%.upload", @frontends %>
130     api_calls_www.upload.label Changeset diff uploads
131     api_calls_www.other.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_%%%.other", @frontends %>
132     api_calls_www.other.label Other API calls
133     api_calls_www.amf.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_%%%.amf", @frontends %>
134     api_calls_www.amf.label AMF API calls
135     api_calls_www.history.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_%%%.history", @frontends %>
136     api_calls_www.history.label Element history fetches
137     api_calls_www.full.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_%%%.full", @frontends %>
138     api_calls_www.full.label Full element fetches
139     api_calls_www.map.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_%%%.map", @frontends %>
140     api_calls_www.map.label Map API calls
141     api_calls_www.trkpts.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_%%%.trkpts", @frontends %>
142     api_calls_www.trkpts.label GPX trackpoints calls
143     api_calls_error.graph_title HTTP errors
144     api_calls_error.graph_vlabel Number of errors per ${graph_period}
145     api_calls_error.graph_category api
146     api_calls_error.graph_order http401 http500 http502 http503 http509
147     api_calls_error.http401.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_status.http401", @frontends %>
148     api_calls_error.http401.label 401 Unauthorized
149     api_calls_error.http401.warning :0.5
150     api_calls_error.http500.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_status.http500", @frontends %>
151     api_calls_error.http500.label 500 Internal Server Error
152     api_calls_error.http500.warning :0.5
153     api_calls_error.http502.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_status.http502", @frontends %>
154     api_calls_error.http502.label 502 Bad Gateway
155     api_calls_error.http502.warning :0.5
156     api_calls_error.http503.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_status.http503", @frontends %>
157     api_calls_error.http503.label 503 Service Unavailable
158     api_calls_error.http503.warning :0.5
159     api_calls_error.http509.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_status.http509", @frontends %>
160     api_calls_error.http509.label 509 Bandwidth Limit Exceeded 
161     api_calls_error.http509.warning :5
162     api_calls_num.graph_title Requests processed
163     api_calls_num.graph_vlabel Number of requests per ${graph_period}
164     api_calls_num.graph_category api
165     api_calls_num.graph_order map upload amf history full trkpts web other
166     api_calls_num.web.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_num.web", @frontends %>
167     api_calls_num.web.label Web site traffic
168     api_calls_num.upload.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_num.upload", @frontends %>
169     api_calls_num.upload.label Changeset diff uploads
170     api_calls_num.other.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_num.other", @frontends %>
171     api_calls_num.other.label Other API calls
172     api_calls_num.amf.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_num.amf", @frontends %>
173     api_calls_num.amf.label AMF API calls
174     api_calls_num.history.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_num.history", @frontends %>
175     api_calls_num.history.label Element history fetches
176     api_calls_num.full.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_num.full", @frontends %>
177     api_calls_num.full.label Full element fetches
178     api_calls_num.map.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_num.map", @frontends %>
179     api_calls_num.map.label Map API calls
180     api_calls_num.trkpts.sum <%= Chef::Munin.expand "%%.openstreetmap:api_calls_num.trkpts", @frontends %>
181     api_calls_num.trkpts.label GPX trackpoints calls
182     api_waits_www.graph_title Wait times for active requests
183     api_waits_www.graph_vlabel Average time of requests
184     api_waits_www.graph_category api
185     api_waits_www.graph_order map upload amf history full trkpts web other
186     api_waits_www.web.sum <%= Chef::Munin.expand "%%.openstreetmap:api_waits_%%%.web", @frontends %>
187     api_waits_www.web.label Web site traffic
188     api_waits_www.web.cdef web,2,/
189     api_waits_www.upload.sum <%= Chef::Munin.expand "%%.openstreetmap:api_waits_%%%.upload", @frontends %>
190     api_waits_www.upload.label Changeset diff uploads
191     api_waits_www.upload.cdef upload,2,/
192     api_waits_www.other.sum <%= Chef::Munin.expand "%%.openstreetmap:api_waits_%%%.other", @frontends %>
193     api_waits_www.other.label Other API calls
194     api_waits_www.other.cdef other,2,/
195     api_waits_www.amf.sum <%= Chef::Munin.expand "%%.openstreetmap:api_waits_%%%.amf", @frontends %>
196     api_waits_www.amf.label AMF API calls
197     api_waits_www.amf.cdef amf,2,/
198     api_waits_www.history.sum <%= Chef::Munin.expand "%%.openstreetmap:api_waits_%%%.history", @frontends %>
199     api_waits_www.history.label Element history fetches
200     api_waits_www.history.cdef history,2,/
201     api_waits_www.full.sum <%= Chef::Munin.expand "%%.openstreetmap:api_waits_%%%.full", @frontends %>
202     api_waits_www.full.label Full element fetches
203     api_waits_www.full.cdef full,2,/
204     api_waits_www.map.sum <%= Chef::Munin.expand "%%.openstreetmap:api_waits_%%%.map", @frontends %>
205     api_waits_www.map.label Map API calls
206     api_waits_www.map.cdef map,2,/
207     api_waits_www.trkpts.sum <%= Chef::Munin.expand "%%.openstreetmap:api_waits_%%%.trkpts", @frontends %>
208     api_waits_www.trkpts.label GPX trackpoints calls
209     api_waits_www.trkpts.cdef trkpts,2,/
210     memcached_multi_commands.graph_title Commands
211     memcached_multi_commands.graph_vlabel Commands per ${graph_period}
212     memcached_multi_commands.graph_category memcached
213     memcached_multi_commands.graph_order cmd_get cmd_set cmd_touch get_hits get_misses delete_hits delete_misses incr_hits incr_misses decr_hits decr_misses touch_hits touch_misses
214     memcached_multi_commands.cmd_get.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_commands.cmd_get", @backends %>
215     memcached_multi_commands.cmd_get.label Gets
216     memcached_multi_commands.cmd_set.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_commands.cmd_set", @backends %>
217     memcached_multi_commands.cmd_set.label Sets
218     memcached_multi_commands.cmd_touch.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_commands.cmd_touch", @backends %>
219     memcached_multi_commands.cmd_touch.label Touches
220     memcached_multi_commands.get_hits.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_commands.get_hits", @backends %>
221     memcached_multi_commands.get_hits.label Get Hits
222     memcached_multi_commands.get_misses.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_commands.get_misses", @backends %>
223     memcached_multi_commands.get_misses.label Get Misses
224     memcached_multi_commands.delete_hits.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_commands.delete_hits", @backends %>
225     memcached_multi_commands.delete_hits.label Delete Hits
226     memcached_multi_commands.delete_misses.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_commands.delete_misses", @backends %>
227     memcached_multi_commands.delete_misses.label Delete Misses
228     memcached_multi_commands.incr_hits.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_commands.incr_hits", @backends %>
229     memcached_multi_commands.incr_hits.label Increment Hits
230     memcached_multi_commands.incr_misses.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_commands.incr_misses", @backends %>
231     memcached_multi_commands.incr_misses.label Increment Misses
232     memcached_multi_commands.decr_hits.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_commands.decr_hits", @backends %>
233     memcached_multi_commands.decr_hits.label Decrement Hits
234     memcached_multi_commands.decr_misses.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_commands.decr_misses", @backends %>
235     memcached_multi_commands.decr_misses.label Decrement Misses
236     memcached_multi_commands.touch_hits.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_commands.touch_hits", @backends %>
237     memcached_multi_commands.touch_hits.label Touch Hits
238     memcached_multi_commands.touch_misses.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_commands.touch_misses", @backends %>
239     memcached_multi_commands.touch_misses.label Touch Misses
240     memcached_multi_conns.graph_title Connections
241     memcached_multi_conns.graph_vlabel Connections per ${graph_period}
242     memcached_multi_conns.graph_category memcached
243     memcached_multi_conns.graph_order max_conns curr_conns avg_conns
244     memcached_multi_conns.curr_conns.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_conns.curr_conns", @backends %>
245     memcached_multi_conns.curr_conns.label Current Connections
246     memcached_multi_conns.max_conns.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_conns.max_conns", @backends %>
247     memcached_multi_conns.max_conns.label Max Connections
248     memcached_multi_conns.avg_conns.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_conns.avg_conns", @backends %>
249     memcached_multi_conns.avg_conns.label Avg Connections
250     memcached_multi_evictions.graph_title Evictions
251     memcached_multi_evictions.graph_vlabel Evictions per ${graph_period}
252     memcached_multi_evictions.graph_category memcached
253     memcached_multi_evictions.evictions.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_evictions.evictions", @backends %>
254     memcached_multi_evictions.evictions.label Evictions
255     memcached_multi_evictions.evicted_nonzero.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_evictions.evicted_nonzero", @backends %>
256     memcached_multi_evictions.evicted_nonzero.label Evictions prior to Expire
257     memcached_multi_evictions.reclaimed.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_evictions.reclaimed", @backends %>
258     memcached_multi_evictions.reclaimed.label Reclaimed Items
259     memcached_multi_items.graph_title Items
260     memcached_multi_items.graph_vlabel Items in Memcached
261     memcached_multi_items.graph_category memcached
262     memcached_multi_items.graph_order curr_items total_items
263     memcached_multi_items.curr_items.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_items.curr_items", @backends %>
264     memcached_multi_items.curr_items.label Current Items
265     memcached_multi_items.total_items.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_items.total_items", @backends %>
266     memcached_multi_items.total_items.label New Items
267     memcached_multi_memory.graph_title Memory Usage
268     memcached_multi_memory.graph_vlabel Bytes Used
269     memcached_multi_memory.graph_category memcached
270     memcached_multi_memory.graph_order limit_maxbytes bytes
271     memcached_multi_memory.limit_maxbytes.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_memory.limit_maxbytes", @backends %>
272     memcached_multi_memory.limit_maxbytes.label Maximum Bytes Allocated
273     memcached_multi_memory.bytes.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_memory.bytes", @backends %>
274     memcached_multi_memory.bytes.label Current Bytes Used
275     memcached_multi_bytes.graph_title Network Traffic
276     memcached_multi_bytes.graph_args --base 1000
277     memcached_multi_bytes.graph_vlabel bits in (-) / out (+)
278     memcached_multi_bytes.graph_category memcached
279     memcached_multi_bytes.graph_order bytes_read bytes_written
280     memcached_multi_bytes.bytes_read.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_bytes.bytes_read", @backends %>
281     memcached_multi_bytes.bytes_read.label Network Traffic coming in (-)
282     memcached_multi_bytes.bytes_read.cdef bytes_read,8,*
283     memcached_multi_bytes.bytes_read.graph no
284     memcached_multi_bytes.bytes_written.sum <%= Chef::Munin.expand "%%.openstreetmap:memcached_multi_bytes.bytes_written", @backends %>
285     memcached_multi_bytes.bytes_written.negative bytes_read
286     memcached_multi_bytes.bytes_written.label Traffic in (-) / out (+)
287     memcached_multi_bytes.bytes_written.cdef bytes_written,8,*
288
289 # Configure compound graphs for tile.openstreetmap.org
290 [tile.openstreetmap]
291     update no
292     network_in.graph_title Inbound network traffic
293     network_in.graph_vlabel bits in per ${graph_period}
294     network_in.graph_category network
295     network_in.graph_order <%= Chef::Munin.expand "%%name%%=%%name%%.openstreetmap:if_%%interface%%.down", @tilecaches %>
296     network_in.graph_total total
297 <% @tilecaches.each do |tc| -%>
298     network_in.<%= tc[:name] %>.label <%= tc[:name] %>
299     network_in.<%= tc[:name] %>.cdef <%= tc[:name] %>,8,*
300     network_in.<%= tc[:name] %>.draw AREASTACK
301 <% end -%>
302     network_out.graph_title Outbound network traffic
303     network_out.graph_vlabel bits out per ${graph_period}
304     network_out.graph_category network
305     network_out.graph_order <%= Chef::Munin.expand "%%name%%=%%name%%.openstreetmap:if_%%interface%%.up", @tilecaches %>
306     network_out.graph_total total
307 <% @tilecaches.each do |tc| -%>
308     network_out.<%= tc[:name] %>.label <%= tc[:name] %>
309     network_out.<%= tc[:name] %>.cdef <%= tc[:name] %>,8,*
310     network_out.<%= tc[:name] %>.draw AREASTACK
311 <% end -%>
312     squid_delay_pools.graph_title IPs being delayed
313     squid_delay_pools.graph_args --base 1000 -l 0
314     squid_delay_pools.graph_vlabel IPs
315     squid_delay_pools.graph_order squid_delay1
316     squid_delay_pools.graph_category squid
317     squid_delay_pools.squid_delay1.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:squid_delay_pools.squid_delay1", @tilecaches %>
318     squid_delay_pools.squid_delay1.label IPs
319     squid_delay_pools.squid_delay1.min 0
320     squid_delay_pools.squid_delay1.draw AREA
321     squid_requests.graph_title Squid client requests
322     squid_requests.graph_args --base 1000 -l 0
323     squid_requests.graph_vlabel requests / ${graph_period}
324     squid_requests.graph_order hits errors requests
325     squid_requests.graph_total total
326     squid_requests.graph_category squid
327     squid_requests.hits.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:squid_requests.hits", @tilecaches %>
328     squid_requests.hits.label hits
329     squid_requests.hits.draw AREA
330     squid_requests.errors.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:squid_requests.errors", @tilecaches %>
331     squid_requests.errors.label errors
332     squid_requests.errors.draw STACK
333     squid_requests.requests.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:squid_requests.requests", @tilecaches %>
334     squid_requests.requests.label misses
335     squid_requests.requests.draw STACK
336     squid_traffic.graph_title Squid traffic status
337     squid_traffic.graph_args --base 1000
338     squid_traffic.graph_vlabel bits per ${graph_period}
339     squid_traffic.graph_order kbytes_in kbytes_out hit_kbytes_out
340     squid_traffic.graph_category squid
341     squid_traffic.kbytes_in.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:squid_traffic.kbytes_in", @tilecaches %>
342     squid_traffic.kbytes_in.label received
343     squid_traffic.kbytes_in.cdef kbytes_in,8096,*
344     squid_traffic.kbytes_out.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:squid_traffic.kbytes_out", @tilecaches %>
345     squid_traffic.kbytes_out.label sent
346     squid_traffic.kbytes_out.cdef kbytes_out,8096,*
347     squid_traffic.hit_kbytes_out.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:squid_traffic.hit_kbytes_out", @tilecaches %>
348     squid_traffic.hit_kbytes_out.label from cache
349     squid_traffic.hit_kbytes_out.cdef hit_kbytes_out,8096,*
350     squid_times_http.graph_title Squid Http Service Times
351     squid_times_http.graph_category squid
352     squid_times_http.graph_args --lower-limit 0
353     squid_times_http.graph_vlabel median reponse times (s)
354     squid_times_http.graph_order <%= Chef::Munin.expand "%%name%%=%%name%%.openstreetmap:squid_times.mean_http", @tilecaches %>
355 <% @tilecaches.each do |tc| -%>
356     squid_times_http.<%= tc[:name] %>.label <%= tc[:name] %>
357 <% end -%>
358     squid_times_cmis.graph_title Squid Cache Miss Service Times
359     squid_times_cmis.graph_category squid
360     squid_times_cmis.graph_args --lower-limit 0
361     squid_times_cmis.graph_vlabel median reponse times (s)
362     squid_times_cmis.graph_order <%= Chef::Munin.expand "%%name%%=%%name%%.openstreetmap:squid_times.mean_cmis", @tilecaches %>
363 <% @tilecaches.each do |tc| -%>
364     squid_times_cmis.<%= tc[:name] %>.label <%= tc[:name] %>
365 <% end -%>
366     squid_times_chits.graph_title Squid Cache Hit Service Times
367     squid_times_chits.graph_category squid
368     squid_times_chits.graph_args --lower-limit 0
369     squid_times_chits.graph_vlabel median reponse times (s)
370     squid_times_chits.graph_order <%= Chef::Munin.expand "%%name%%=%%name%%.openstreetmap:squid_times.mean_chits", @tilecaches %>
371 <% @tilecaches.each do |tc| -%>
372     squid_times_chits.<%= tc[:name] %>.label <%= tc[:name] %>
373 <% end -%>
374     squid_times_nhits.graph_title Squid Cache Near Hit Service Times
375     squid_times_nhits.graph_category squid
376     squid_times_nhits.graph_args --lower-limit 0
377     squid_times_nhits.graph_vlabel median reponse times (s)
378     squid_times_nhits.graph_order <%= Chef::Munin.expand "%%name%%=%%name%%.openstreetmap:squid_times.mean_nhits", @tilecaches %>
379 <% @tilecaches.each do |tc| -%>
380     squid_times_nhits.<%= tc[:name] %>.label <%= tc[:name] %>
381 <% end -%>
382     squid_times_nmr.graph_title Squid Cache Not Modified Service Times
383     squid_times_nmr.graph_category squid
384     squid_times_nmr.graph_args --lower-limit 0
385     squid_times_nmr.graph_vlabel median reponse times (s)
386     squid_times_nmr.graph_order <%= Chef::Munin.expand "%%name%%=%%name%%.openstreetmap:squid_times.mean_nmr", @tilecaches %>
387 <% @tilecaches.each do |tc| -%>
388     squid_times_nmr.<%= tc[:name] %>.label <%= tc[:name] %>
389 <% end -%>
390     squid_times_dnsl.graph_title Squid Cache DNS Lookup Service Times
391     squid_times_dnsl.graph_category squid
392     squid_times_dnsl.graph_args --lower-limit 0
393     squid_times_dnsl.graph_vlabel median reponse times (s)
394     squid_times_dnsl.graph_order <%= Chef::Munin.expand "%%name%%=%%name%%.openstreetmap:squid_times.mean_dnsl", @tilecaches %>
395 <% @tilecaches.each do |tc| -%>
396     squid_times_dnsl.<%= tc[:name] %>.label <%= tc[:name] %>
397 <% end -%>
398
399 # Configure compound graphs for render.openstreetmap.org
400 [render.openstreetmap]
401     update no
402     apache_accesses.graph_title Apache accesses
403     apache_accesses.graph_vlabel accesses / ${graph_period}
404     apache_accesses.graph_category apache
405     apache_accesses.graph_order <%= Chef::Munin.expand "%%name%%=%%name%%.openstreetmap:apache_accesses.accesses80", @renderers %>
406     apache_accesses.graph_total total
407 <% @renderers.each do |rs| -%>
408     apache_accesses.<%= rs[:name] %>.label <%= rs[:name] %>
409     apache_accesses.<%= rs[:name] %>.draw AREASTACK
410 <% end -%>
411     apache_volume.graph_title Apache volume
412     apache_volume.graph_vlabel bytes per ${graph_period}
413     apache_volume.graph_category apache
414     apache_volume.graph_order <%= Chef::Munin.expand "%%name%%=%%name%%.openstreetmap:apache_volume.volume80", @renderers %>
415     apache_volume.graph_total total
416 <% @renderers.each do |rs| -%>
417     apache_volume.<%= rs[:name] %>.label <%= rs[:name] %>
418     apache_volume.<%= rs[:name] %>.draw AREASTACK
419 <% end -%>
420     network_in.graph_title Inbound network traffic
421     network_in.graph_vlabel bits in per ${graph_period}
422     network_in.graph_category network
423     network_in.graph_order <%= Chef::Munin.expand "%%name%%=%%name%%.openstreetmap:if_%%interface%%.down", @renderers %>
424     network_in.graph_total total
425 <% @renderers.each do |rs| -%>
426     network_in.<%= rs[:name] %>.label <%= rs[:name] %>
427     network_in.<%= rs[:name] %>.cdef <%= rs[:name] %>,8,*
428     network_in.<%= rs[:name] %>.draw AREASTACK
429 <% end -%>
430     network_out.graph_title Outbound network traffic
431     network_out.graph_vlabel bits out per ${graph_period}
432     network_out.graph_category network
433     network_out.graph_order <%= Chef::Munin.expand "%%name%%=%%name%%.openstreetmap:if_%%interface%%.up", @renderers %>
434     network_out.graph_total total
435 <% @renderers.each do |rs| -%>
436     network_out.<%= rs[:name] %>.label <%= rs[:name] %>
437     network_out.<%= rs[:name] %>.cdef <%= rs[:name] %>,8,*
438     network_out.<%= rs[:name] %>.draw AREASTACK
439 <% end -%>
440     mod_tile_fresh.graph_title freshness of served tiles
441     mod_tile_fresh.graph_args --base 1000 -l 0
442     mod_tile_fresh.graph_vlabel tiles per ${graph_period}
443     mod_tile_fresh.graph_order fresh freshrender old oldrender outdated outdatedrender
444     mod_tile_fresh.graph_category mod_tile
445     mod_tile_fresh.fresh.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_fresh.fresh", @renderers %>
446     mod_tile_fresh.fresh.label Fresh from disk
447     mod_tile_fresh.fresh.draw AREA
448     mod_tile_fresh.freshrender.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_fresh.freshrender", @renderers %>
449     mod_tile_fresh.freshrender.label Freshly rendered
450     mod_tile_fresh.freshrender.draw STACK
451     mod_tile_fresh.old.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_fresh.old", @renderers %>
452     mod_tile_fresh.old.label Old from disk
453     mod_tile_fresh.old.draw STACK
454     mod_tile_fresh.oldrender.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_fresh.oldrender", @renderers %>
455     mod_tile_fresh.oldrender.label Old tile, attempted render
456     mod_tile_fresh.oldrender.draw STACK
457     mod_tile_fresh.outdated.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_fresh.outdated", @renderers %>
458     mod_tile_fresh.outdated.label Outdated from disk
459     mod_tile_fresh.outdated.draw STACK
460     mod_tile_fresh.outdatedrender.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_fresh.outdatedrender", @renderers %>
461     mod_tile_fresh.outdatedrender.label Outdated tile, attempted render
462     mod_tile_fresh.outdatedrender.draw STACK
463     mod_tile_response.graph_title mod_tile HTTP response codes
464     mod_tile_response.graph_args --base 1000 -l 0
465     mod_tile_response.graph_vlabel responses per ${graph_period}
466     mod_tile_response.graph_order response200 response304 response404 response500
467     mod_tile_response.graph_category mod_tile
468     mod_tile_response.response200.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_response.response200", @renderers %>
469     mod_tile_response.response200.label 200 OK
470     mod_tile_response.response200.draw AREA
471     mod_tile_response.response304.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_response.response304", @renderers %>
472     mod_tile_response.response304.label 304 Not Modified
473     mod_tile_response.response304.draw STACK
474     mod_tile_response.response404.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_response.response404", @renderers %>
475     mod_tile_response.response404.label 404 Not Found
476     mod_tile_response.response404.draw STACK
477     mod_tile_response.response500.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_response.response500", @renderers %>
478     mod_tile_response.response500.label 500 Internal Error
479     mod_tile_response.response500.draw STACK
480     mod_tile_zoom.graph_title mod_tile responses by zoom layer
481     mod_tile_zoom.graph_args --base 1000 -l 0
482     mod_tile_zoom.graph_vlabel responses per ${graph_period}
483     mod_tile_zoom.graph_order z1 z2 z3 z4 z5 z6
484     mod_tile_zoom.graph_category mod_tile
485     mod_tile_zoom.z1.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_zoom.z1", @renderers %>
486     mod_tile_zoom.z1.label z1-8
487     mod_tile_zoom.z1.draw AREA
488     mod_tile_zoom.z2.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_zoom.z2", @renderers %>
489     mod_tile_zoom.z2.label z9-12
490     mod_tile_zoom.z2.draw STACK
491     mod_tile_zoom.z3.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_zoom.z3", @renderers %>
492     mod_tile_zoom.z3.label z13-14
493     mod_tile_zoom.z3.draw STACK
494     mod_tile_zoom.z4.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_zoom.z4", @renderers %>
495     mod_tile_zoom.z4.label z15-16
496     mod_tile_zoom.z4.draw STACK
497     mod_tile_zoom.z5.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_zoom.z5", @renderers %>
498     mod_tile_zoom.z5.label z17-18
499     mod_tile_zoom.z5.draw STACK
500     mod_tile_zoom.z6.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:mod_tile_zoom.z6", @renderers %>
501     mod_tile_zoom.z6.label z19-20
502     mod_tile_zoom.z6.draw STACK
503     renderd_queue.graph_title Renderd queue length
504     renderd_queue.graph_args --base 1000 -l 0
505     renderd_queue.graph_vlabel metatiles
506     renderd_queue.graph_order reqPrio req reqLow dirty reqBulk
507     renderd_queue.graph_category renderd
508     renderd_queue.reqPrio.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_queue.reqPrio", @renderers %>
509     renderd_queue.reqPrio.label Priority request Queue
510     renderd_queue.reqPrio.type GAUGE
511     renderd_queue.req.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_queue.req", @renderers %>
512     renderd_queue.req.label Request Queue
513     renderd_queue.req.type GAUGE
514     renderd_queue.reqLow.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_queue.reqLow", @renderers %>
515     renderd_queue.reqLow.label Low priority request Queue
516     renderd_queue.reqLow.type GAUGE
517     renderd_queue.dirty.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_queue.dirty", @renderers %>
518     renderd_queue.dirty.label Dirty Queue
519     renderd_queue.dirty.type GAUGE
520     renderd_queue.reqBulk.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_queue.reqBulk", @renderers %>
521     renderd_queue.reqBulk.label Bulk request Queue
522     renderd_queue.reqBulk.type GAUGE
523     renderd_processed.graph_title Renderd throughput
524     renderd_processed.graph_args --base 1000 -l 0
525     renderd_processed.graph_vlabel Metatiles per ${graph_period}
526     renderd_processed.graph_order req reqLow reqPrio dirty reqBulk dropped
527     renderd_processed.graph_category renderd
528     renderd_processed.graph_info Displays the number of metatiles being rendered by renderd per ${graph_period}
529     renderd_processed.req.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_processed.req", @renderers %>
530     renderd_processed.req.label Request Queue
531     renderd_processed.req.draw AREA
532     renderd_processed.req.info Throughput of Metatiles submitted for on the fly rendering
533     renderd_processed.reqLow.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_processed.reqLow", @renderers %>
534     renderd_processed.reqLow.label Low priority request Queue
535     renderd_processed.reqLow.draw STACK
536     renderd_processed.reqLow.info Throughput of Metatiles submitted low priority for on the fly rendering
537     renderd_processed.reqPrio.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_processed.reqPrio", @renderers %>
538     renderd_processed.reqPrio.label Priority request Queue
539     renderd_processed.reqPrio.draw STACK
540     renderd_processed.reqPrio.info Throughput of Metatiles submitted high priority for on the fly rendering
541     renderd_processed.dirty.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_processed.dirty", @renderers %>
542     renderd_processed.dirty.label Dirty Queue
543     renderd_processed.dirty.draw STACK
544     renderd_processed.dirty.info Throughput of dirty Metatiles submitted for re-render
545     renderd_processed.reqBulk.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_processed.reqBulk", @renderers %>
546     renderd_processed.reqBulk.label Bulk request Queue
547     renderd_processed.reqBulk.draw STACK
548     renderd_processed.reqBulk.info Throughput of Metatiles submitted with background priority
549     renderd_processed.dropped.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_processed.dropped", @renderers %>
550     renderd_processed.dropped.label Dropped (x20)
551     renderd_processed.dropped.draw LINE2
552     renderd_processed.dropped.info Number of Tiles dropped due to queue overload (x20)
553     renderd_processed.dropped.cdef dropped,20,/
554     renderd_zoom.graph_title Renderd throughput by zoom
555     renderd_zoom.graph_args --base 1000 -l 0
556     renderd_zoom.graph_vlabel Metatiles per ${graph_period}
557     renderd_zoom.graph_order z1 z2 z3 z4 z5 z6
558     renderd_zoom.graph_category renderd
559     renderd_zoom.graph_info Displays the number of metatiles being rendered by renderd per ${graph_period}
560     renderd_zoom.z1.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_zoom.z1", @renderers %>
561     renderd_zoom.z1.label zoom z0 - z8
562     renderd_zoom.z1.draw AREA
563     renderd_zoom.z1.info Throughput of Metatiles for z0 - z8
564     renderd_zoom.z2.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_zoom.z2", @renderers %>
565     renderd_zoom.z2.label zoom z9 - z12
566     renderd_zoom.z2.draw STACK
567     renderd_zoom.z2.info Throughput of Metatiles for z9 - z12
568     renderd_zoom.z3.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_zoom.z3", @renderers %>
569     renderd_zoom.z3.label zoom z13 - z14
570     renderd_zoom.z3.draw STACK
571     renderd_zoom.z3.info Throughput of Metatiles for z13 - z14
572     renderd_zoom.z4.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_zoom.z4", @renderers %>
573     renderd_zoom.z4.label zoom z15 - z16
574     renderd_zoom.z4.draw STACK
575     renderd_zoom.z4.info Throughput of Metatiles for z15 - z16
576     renderd_zoom.z5.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_zoom.z5", @renderers %>
577     renderd_zoom.z5.label zoom z17 - z18
578     renderd_zoom.z5.draw STACK
579     renderd_zoom.z5.info Throughput of Metatiles for z17 - z18
580     renderd_zoom.z6.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_zoom.z6", @renderers %>
581     renderd_zoom.z6.label zoom z19 - z20
582     renderd_zoom.z6.draw STACK
583     renderd_zoom.z6.info Throughput of Metatiles for z19 - z20
584     renderd_queue_time.graph_title Renderd time spent by queue
585     renderd_queue_time.graph_args --base 1000 -l 0
586     renderd_queue_time.graph_vlabel metatiles
587     renderd_queue_time.graph_order reqPrio req reqLow dirty reqBulk
588     renderd_queue_time.graph_category renderd
589     renderd_queue_time.reqPrio.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_queue_time.reqPrio", @renderers %>
590     renderd_queue_time.reqPrio.label Priority request queue
591     renderd_queue_time.reqPrio.cdef reqPrio,1000,/
592     renderd_queue_time.reqPrio.draw AREA
593     renderd_queue_time.reqPrio.info Time for priority request queue
594     renderd_queue_time.req.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_queue_time.req", @renderers %>
595     renderd_queue_time.req.label Request queue
596     renderd_queue_time.req.cdef req,1000,/
597     renderd_queue_time.req.draw STACK
598     renderd_queue_time.req.info Time for Request queue
599     renderd_queue_time.reqLow.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_queue_time.reqLow", @renderers %>
600     renderd_queue_time.reqLow.label Low priority request queue
601     renderd_queue_time.reqLow.cdef reqLow,1000,/
602     renderd_queue_time.reqLow.draw STACK
603     renderd_queue_time.reqLow.info Time for low priority request queue
604     renderd_queue_time.dirty.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_queue_time.dirty", @renderers %>
605     renderd_queue_time.dirty.label Dirty queue
606     renderd_queue_time.dirty.cdef dirty,1000,/
607     renderd_queue_time.dirty.draw STACK
608     renderd_queue_time.dirty.info Time for dirty queue
609     renderd_queue_time.reqBulk.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_queue_time.reqBulk", @renderers %>
610     renderd_queue_time.reqBulk.label Bulk queue
611     renderd_queue_time.reqBulk.cdef reqBulk,1000,/
612     renderd_queue_time.reqBulk.draw STACK
613     renderd_queue_time.reqBulk.info Time for bulk queue
614     renderd_zoom_time.graph_title Renderd time spent by zoom
615     renderd_zoom_time.graph_args --base 1000 -l 0
616     renderd_zoom_time.graph_vlabel time spent per ${graph_period}
617     renderd_zoom_time.graph_order zoomtime1 zoomtime2 zoomtime3 zoomtime4 zoomtime5 zoomtime6
618     renderd_zoom_time.graph_category renderd
619     renderd_zoom_time.graph_info Displays the amount of time renderd has spent rendering tiles of a given zoom per ${graph_period}
620     renderd_zoom_time.zoomtime1.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_zoom_time.zoomtime1", @renderers %>
621     renderd_zoom_time.zoomtime1.label zoom z0 - z8
622     renderd_zoom_time.zoomtime1.cdef zoomtime1,1000,/
623     renderd_zoom_time.zoomtime1.draw AREA
624     renderd_zoom_time.zoomtime1.info Time for Metatiles z0 - z8
625     renderd_zoom_time.zoomtime2.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_zoom_time.zoomtime2", @renderers %>
626     renderd_zoom_time.zoomtime2.label zoom z9 - z12
627     renderd_zoom_time.zoomtime2.cdef zoomtime2,1000,/
628     renderd_zoom_time.zoomtime2.draw STACK
629     renderd_zoom_time.zoomtime2.info Time for Metatiles for z9 - z12
630     renderd_zoom_time.zoomtime3.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_zoom_time.zoomtime3", @renderers %>
631     renderd_zoom_time.zoomtime3.label zoom z13 - z14
632     renderd_zoom_time.zoomtime3.cdef zoomtime3,1000,/
633     renderd_zoom_time.zoomtime3.draw STACK
634     renderd_zoom_time.zoomtime3.info Time for Metatiles for z13 - z14
635     renderd_zoom_time.zoomtime4.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_zoom_time.zoomtime4", @renderers %>
636     renderd_zoom_time.zoomtime4.label zoom z15 - z16
637     renderd_zoom_time.zoomtime4.cdef zoomtime4,1000,/
638     renderd_zoom_time.zoomtime4.draw STACK
639     renderd_zoom_time.zoomtime4.info Time for Metatiles for z15 - z16
640     renderd_zoom_time.zoomtime5.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_zoom_time.zoomtime5", @renderers %>
641     renderd_zoom_time.zoomtime5.label zoom z17 - z18
642     renderd_zoom_time.zoomtime5.cdef zoomtime5,1000,/
643     renderd_zoom_time.zoomtime5.draw STACK
644     renderd_zoom_time.zoomtime5.info Time for Metatiles for z17 - z18
645     renderd_zoom_time.zoomtime6.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:renderd_zoom_time.zoomtime6", @renderers %>
646     renderd_zoom_time.zoomtime6.label zoom z19 - z20
647     renderd_zoom_time.zoomtime6.cdef zoomtime6,1000,/
648     renderd_zoom_time.zoomtime6.draw STACK
649     renderd_zoom_time.zoomtime6.info Time for Metatiles for z19 - z20
650
651 # Configure compound graphs for nominatim.openstreetmap.org
652 [nominatim.openstreetmap]
653     update no
654     nominatim_requests.graph_title Requests by API call
655     nominatim_requests.graph_args --base 1000 -l 0
656     nominatim_requests.graph_vlabel requests per minute
657     nominatim_requests.graph_category nominatim
658     nominatim_requests.graph_order z1 z2 z3 z4
659     nominatim_requests.z1.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:nominatim_requests.z1", @geocoders %>
660     nominatim_requests.z1.label reverse
661     nominatim_requests.z1.draw AREA
662     nominatim_requests.z1.type GAUGE
663     nominatim_requests.z2.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:nominatim_requests.z2", @geocoders %>
664     nominatim_requests.z2.label search (successful)
665     nominatim_requests.z2.draw STACK
666     nominatim_requests.z2.type GAUGE
667     nominatim_requests.z3.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:nominatim_requests.z3", @geocoders %>
668     nominatim_requests.z3.label search (no result)
669     nominatim_requests.z3.draw STACK
670     nominatim_requests.z3.type GAUGE
671     nominatim_requests.z4.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:nominatim_requests.z4", @geocoders %>
672     nominatim_requests.z4.label details
673     nominatim_requests.z4.draw STACK
674     nominatim_requests.z4.type GAUGE
675     nominatim_throttled_ips.graph_title Restricted IPs
676     nominatim_throttled_ips.graph_args -l 0
677     nominatim_throttled_ips.graph_vlabel number of IPs
678     nominatim_throttled_ips.graph_category nominatim
679     nominatim_throttled_ips.graph_order bulk block
680     nominatim_throttled_ips.bulk.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:nominatim_throttled_ips.bulk", @geocoders %>
681     nominatim_throttled_ips.bulk.label bulk
682     nominatim_throttled_ips.bulk.draw AREA
683     nominatim_throttled_ips.bulk.type GAUGE
684     nominatim_throttled_ips.block.sum <%= Chef::Munin.expand "%%name%%.openstreetmap:nominatim_throttled_ips.block", @geocoders %>
685     nominatim_throttled_ips.block.label blocked
686     nominatim_throttled_ips.block.draw STACK
687     nominatim_throttled_ips.block.type GAUGE