From ed01537d8749e38350d6a52c4cc9be473b2c44c4 Mon Sep 17 00:00:00 2001 From: Tom Hughes Date: Tue, 22 Sep 2020 17:44:26 +0000 Subject: [PATCH] Add passenger exporter --- cookbooks/passenger/metadata.rb | 1 + cookbooks/passenger/recipes/default.rb | 6 ++++++ cookbooks/prometheus/resources/exporter.rb | 2 ++ 3 files changed, 9 insertions(+) diff --git a/cookbooks/passenger/metadata.rb b/cookbooks/passenger/metadata.rb index 69e22f4a3..42fc95c2a 100644 --- a/cookbooks/passenger/metadata.rb +++ b/cookbooks/passenger/metadata.rb @@ -9,4 +9,5 @@ supports "ubuntu" depends "apache" depends "apt" depends "munin" +depends "prometheus" depends "systemd" diff --git a/cookbooks/passenger/recipes/default.rb b/cookbooks/passenger/recipes/default.rb index 5ad026023..95abd7890 100644 --- a/cookbooks/passenger/recipes/default.rb +++ b/cookbooks/passenger/recipes/default.rb @@ -20,6 +20,7 @@ include_recipe "apache" include_recipe "apt" include_recipe "munin" +include_recipe "prometheus" package "ruby#{node[:passenger][:ruby_version]}" package "ruby#{node[:passenger][:ruby_version]}-dev" @@ -56,3 +57,8 @@ munin_plugin "passenger_memory" munin_plugin "passenger_processes" munin_plugin "passenger_queues" munin_plugin "passenger_requests" + +prometheus_exporter "passenger" do + port 9149 + environment "PASSENGER_INSTANCE_REGISTRY_DIR" => node[:passenger][:instance_registry_dir] +end diff --git a/cookbooks/prometheus/resources/exporter.rb b/cookbooks/prometheus/resources/exporter.rb index ba214b5d6..5896a1b46 100644 --- a/cookbooks/prometheus/resources/exporter.rb +++ b/cookbooks/prometheus/resources/exporter.rb @@ -23,12 +23,14 @@ property :exporter, :kind_of => String, :name_property => true property :port, :kind_of => Integer, :required => [:create] property :listen_switch, :kind_of => String, :default => "web.listen-address" property :options, :kind_of => [String, Array] +property :environment, :kind_of => Hash, :default => {} action :create do systemd_service service_name do description "Prometheus #{new_resource.exporter} exporter" type "simple" user "root" + environment new_resource.environment exec_start "#{executable_path} #{executable_options}" private_tmp true protect_system "strict" -- 2.43.2