Module: Gitlab::Metrics::SliConfig
- Included in:
- CiDeletedObjectProcessingSlis, GlobalSearchSlis, GlqlSlis, Lfs, LooseForeignKeysSlis, Middleware::PathTraversalCheck, RequestsRackMiddleware, SecurityScanSlis
- Defined in:
- lib/gitlab/metrics/sli_config.rb
Defined Under Namespace
Modules: ConfigMethods
Constant Summary collapse
- RegisterClass =
Data.define(:klass, :is_runtime_enabled_block) do def enabled_class klass if is_runtime_enabled_block.call end end
Class Method Summary collapse
- .enabled_slis ⇒ Object
- .included(base) ⇒ Object
- .register(register_class) ⇒ Object
- .registered_classes ⇒ Object
Class Method Details
.enabled_slis ⇒ Object
16 17 18 |
# File 'lib/gitlab/metrics/sli_config.rb', line 16 def self.enabled_slis SliConfig.registered_classes.filter_map(&:enabled_class) end |
.included(base) ⇒ Object
37 38 39 |
# File 'lib/gitlab/metrics/sli_config.rb', line 37 def self.included(base) base.extend(ConfigMethods) end |
.register(register_class) ⇒ Object
20 21 22 23 |
# File 'lib/gitlab/metrics/sli_config.rb', line 20 def self.register(register_class) Gitlab::AppLogger.info "#{self} registering #{register_class.klass}, runtime=#{Gitlab::Runtime.safe_identify}" SliConfig.registered_classes << register_class end |
.registered_classes ⇒ Object
12 13 14 |
# File 'lib/gitlab/metrics/sli_config.rb', line 12 def self.registered_classes @registered_classes ||= Set.new end |