Class: GitLab::Monitor::Database::CiBuildsProber
- Inherits:
-
Object
- Object
- GitLab::Monitor::Database::CiBuildsProber
- Defined in:
- lib/gitlab_monitor/database/ci_builds.rb
Overview
The prober which is called when gathering metrics
Instance Method Summary collapse
-
#initialize(opts, metrics: PrometheusMetrics.new) ⇒ CiBuildsProber
constructor
A new instance of CiBuildsProber.
- #probe_db ⇒ Object
- #write_to(target) ⇒ Object
Constructor Details
#initialize(opts, metrics: PrometheusMetrics.new) ⇒ CiBuildsProber
Returns a new instance of CiBuildsProber.
411 412 413 414 415 416 417 418 419 |
# File 'lib/gitlab_monitor/database/ci_builds.rb', line 411 def initialize(opts, metrics: PrometheusMetrics.new) @metrics = metrics collector_opts = { connection_string: opts[:connection_string], allowed_repeated_commands_count: opts[:allowed_repeated_commands_count], created_builds_counting_disabled: opts[:created_builds_counting_disabled], unarchived_traces_offset_minutes: opts[:unarchived_traces_offset_minutes] } @collector = CiBuildsCollector.new(collector_opts) end |
Instance Method Details
#probe_db ⇒ Object
421 422 423 424 425 426 427 428 429 430 431 432 433 434 |
# File 'lib/gitlab_monitor/database/ci_builds.rb', line 421 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 repeated_commands_metrics unarchived_traces_metrics self rescue PG::ConnectionBad self end |
#write_to(target) ⇒ Object
436 437 438 |
# File 'lib/gitlab_monitor/database/ci_builds.rb', line 436 def write_to(target) target.write(@metrics.to_s) end |