Class: PrometheusExporter::Server::ShoryukenCollector
- Inherits:
-
TypeCollector
- Object
- TypeCollector
- PrometheusExporter::Server::ShoryukenCollector
- Defined in:
- lib/prometheus_exporter/server/shoryuken_collector.rb
Instance Method Summary collapse
Instance Method Details
#collect(obj) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/prometheus_exporter/server/shoryuken_collector.rb', line 10 def collect(obj) default_labels = { job_name: obj['name'] , queue_name: obj['queue'] } custom_labels = obj['custom_labels'] labels = custom_labels.nil? ? default_labels : default_labels.merge(custom_labels) ensure_shoryuken_metrics @shoryuken_job_duration_seconds.observe(obj["duration"], labels) @shoryuken_jobs_total.observe(1, labels) @shoryuken_restarted_jobs_total.observe(1, labels) if obj["shutdown"] @shoryuken_failed_jobs_total.observe(1, labels) if !obj["success"] && !obj["shutdown"] end |
#metrics ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/prometheus_exporter/server/shoryuken_collector.rb', line 22 def metrics if @shoryuken_jobs_total [ @shoryuken_job_duration_seconds, @shoryuken_jobs_total, @shoryuken_restarted_jobs_total, @shoryuken_failed_jobs_total, ] else [] end end |
#type ⇒ Object
6 7 8 |
# File 'lib/prometheus_exporter/server/shoryuken_collector.rb', line 6 def type "shoryuken" end |