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