]> git.openstreetmap.org Git - chef.git/commitdiff
Collect taginfo metrics
authorTom Hughes <tom@compton.nu>
Sun, 23 Apr 2023 13:14:18 +0000 (14:14 +0100)
committerTom Hughes <tom@compton.nu>
Sun, 23 Apr 2023 13:15:39 +0000 (14:15 +0100)
cookbooks/prometheus/resources/collector.rb
cookbooks/taginfo/metadata.rb
cookbooks/taginfo/recipes/default.rb

index 9a4870f24d67dd74222c88a96140a7fdcd861c55..ce68a7e5c5dcdd2a0a3038dd0f77ce9428949d07 100644 (file)
@@ -24,6 +24,7 @@ default_action :create
 property :collector, :kind_of => String, :name_property => true
 property :interval, :kind_of => [Integer, String], :required => [:create]
 property :user, :kind_of => String
+property :path, :kind_of => String
 property :options, :kind_of => [String, Array]
 property :environment, :kind_of => Hash, :default => {}
 property :proc_subset, String
@@ -91,7 +92,7 @@ action_class do
   end
 
   def executable_path
-    "/opt/prometheus-exporters/collectors/#{new_resource.collector}/#{new_resource.collector}_collector"
+    new_resource.path || "/opt/prometheus-exporters/collectors/#{new_resource.collector}/#{new_resource.collector}_collector"
   end
 
   def executable_options
index 5e468f00c57329830a46a19d0cb78eb62b82edd7..90517c121a1d210db3763c132731cddda0ea4958 100644 (file)
@@ -11,4 +11,5 @@ depends           "apache"
 depends           "git"
 depends           "passenger"
 depends           "planet"
+depends           "prometheus"
 depends           "ruby"
index 613fe7d1dca2dc030210ee30099421833a8fda3c..818561930412db0cdbc6521fce689eb766464866 100644 (file)
@@ -24,6 +24,7 @@ include_recipe "apache"
 include_recipe "git"
 include_recipe "passenger"
 include_recipe "planet::current"
+include_recipe "prometheus"
 include_recipe "ruby"
 
 package %w[
@@ -219,4 +220,11 @@ node[:taginfo][:sites].each do |site|
   service "taginfo-update@#{site_name}.timer" do
     action [:enable, :start]
   end
+
+  prometheus_collector "taginfo-#{site_name}" do
+    interval "15m"
+    user "taginfo"
+    path "#{directory}/taginfo/sources/metrics.rb"
+    options "#{directory}/data"
+  end
 end