Class: GitLab::Exporter::Database::ZoektProber
- Inherits:
-
Object
- Object
- GitLab::Exporter::Database::ZoektProber
- Defined in:
- lib/gitlab_exporter/database/zoekt.rb
Overview
The prober which is called when gathering metrics
Instance Method Summary collapse
-
#initialize(metrics: PrometheusMetrics.new, **opts) ⇒ ZoektProber
constructor
A new instance of ZoektProber.
- #probe_db ⇒ Object
- #write_to(target) ⇒ Object
Constructor Details
#initialize(metrics: PrometheusMetrics.new, **opts) ⇒ ZoektProber
Returns a new instance of ZoektProber.
71 72 73 74 |
# File 'lib/gitlab_exporter/database/zoekt.rb', line 71 def initialize(metrics: PrometheusMetrics.new, **opts) @metrics = metrics @collector = opts[:collector] || ZoektCollector.new(**opts) end |
Instance Method Details
#probe_db ⇒ Object
76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/gitlab_exporter/database/zoekt.rb', line 76 def probe_db results = @collector.run results.to_a.each do |row| @metrics.add( "search_zoekt_task_processing_queue_size", row["task_count"].to_i, node_name: row["node_name"], node_id: row["node_id"] ) end self rescue PG::ConnectionBad self end |
#write_to(target) ⇒ Object
92 93 94 |
# File 'lib/gitlab_exporter/database/zoekt.rb', line 92 def write_to(target) target.write(@metrics.to_s) end |