]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/prometheus/templates/default/chef.prom.erb
Add IPv6 addresses to dulcy
[chef.git] / cookbooks / prometheus / templates / default / chef.prom.erb
index 13b753ef16491018e478d120f864ce5e14847e30..58235e3b411ca3bac509a6db78ec45dd78d774f2 100644 (file)
@@ -1,15 +1,19 @@
 # HELP chef_network_interface Information about network interfaces
 # TYPE chef_network_interface gauge
-<% node.interfaces do |interface| -%>
-chef_network_interface{name="<%= interface[:interface] %>",role="<%= interface[:role].to_s %>",family="<%= interface[:family].to_s %>"} 1
+<% node.interfaces.each do |interface| -%>
+<% if interface[:interface] =~ /^bond\d+$/ -%>
+chef_network_interface{name="<%= interface[:interface] %>",role="<%= interface[:role].to_s %>",bond_mode="<%= interface[:bond][:mode] || 'active-backup' %>"} 1
+<% else -%>
+chef_network_interface{name="<%= interface[:interface] %>",role="<%= interface[:role].to_s %>"} 1
+<% end -%>
 <% end -%>
 # HELP chef_role Information about chef roles
 # TYPE chef_role gauge
 <% node[:roles].sort.each do |role| -%>
 chef_role{name="<%= role %>"} 1
 <% end -%>
-<% if node[:roles].include?("tilecache") -%>
-# HELP chef_tile_parent Information about tile cache parents
-# TYPE chef_tile_parent gauge
-chef_tile_parent{name="<%= node[:tilecache][:tile_parent].split(".").first %>"} 1
+<% node[:prometheus][:metrics].sort.each do |name, details| -%>
+# HELP <%= name %> <%= details[:help] %>
+# TYPE <%= name %> gauge
+<%= name %>{<%= Hash(details[:labels]).map { |k,v| "#{k}=\"#{v}\"" }.join(",") %>} <%= details[:metric] || 1 %>
 <% end -%>