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