diff --git a/config/application.rb b/config/application.rb index 26f237f8..80f100ae 100644 --- a/config/application.rb +++ b/config/application.rb @@ -34,5 +34,10 @@ module CodeOcean config.action_cable.mount_path = '/cable' config.telegraf.tags = { application: 'codeocean' } + + config.after_initialize do + # Initialize the counters according to the db + Prometheus::Controller.initialize_metrics + end end end diff --git a/config/initializers/prometheus.rb b/config/initializers/prometheus.rb index 8abe5ec9..1b23297c 100644 --- a/config/initializers/prometheus.rb +++ b/config/initializers/prometheus.rb @@ -6,5 +6,4 @@ return if %w[db: assets:].any? { |task| Rake.application.top_level_tasks.to_s.in # Add metric callbacks to all models ApplicationRecord.include Prometheus::Record -# Initialize the counters according to the db -Prometheus::Controller.initialize_metrics +# Initialization is performed in config/application.rb diff --git a/lib/prometheus/controller.rb b/lib/prometheus/controller.rb index ae2c6d8f..16fc9052 100644 --- a/lib/prometheus/controller.rb +++ b/lib/prometheus/controller.rb @@ -12,7 +12,6 @@ module Prometheus def initialize_metrics register_metrics - Rails.application.eager_load! Rails.application.executor.wrap do Thread.new do initialize_instance_count