Class: GitLab::Exporter::Database::CiBuildsProber
- Inherits:
-
Object
- Object
- GitLab::Exporter::Database::CiBuildsProber
- Defined in:
- lib/gitlab_exporter/database/ci_builds.rb
Overview
The prober which is called when gathering metrics
Instance Method Summary collapse
-
#initialize(opts, metrics: PrometheusMetrics.new, logger: nil) ⇒ CiBuildsProber
constructor
A new instance of CiBuildsProber.
- #probe_db ⇒ Object
- #write_to(target) ⇒ Object
Constructor Details
#initialize(opts, metrics: PrometheusMetrics.new, logger: nil) ⇒ CiBuildsProber
Returns a new instance of CiBuildsProber.
297 298 299 300 301 302 303 304 |
# File 'lib/gitlab_exporter/database/ci_builds.rb', line 297 def initialize(opts, metrics: PrometheusMetrics.new, logger: nil) @metrics = metrics collector_opts = { connection_string: opts[:connection_string], created_builds_counting_disabled: opts[:created_builds_counting_disabled], unarchived_traces_offset_minutes: opts[:unarchived_traces_offset_minutes] } @collector = CiBuildsCollector.new(collector_opts, logger: logger) end |
Instance Method Details
#probe_db ⇒ Object
306 307 308 309 310 311 312 313 314 315 316 317 318 |
# File 'lib/gitlab_exporter/database/ci_builds.rb', line 306 def probe_db @results = @collector.run ci_builds_metrics(@results[:created_builds], "ci_created_builds") if @results[:created_builds] ci_builds_metrics(@results[:pending_builds], "ci_pending_builds") ci_stale_builds_metrics metrics_per_runner unarchived_traces_metrics self rescue PG::ConnectionBad self end |
#write_to(target) ⇒ Object
320 321 322 |
# File 'lib/gitlab_exporter/database/ci_builds.rb', line 320 def write_to(target) target.write(@metrics.to_s) end |