Class: Instana::SpanFiltering::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/instana/span_filtering/configuration.rb

Overview

Configuration class for span filtering

This class handles loading and managing span filtering rules from various sources:

  • YAML configuration file (via INSTANA_CONFIG_PATH)

  • Environment variables

  • Agent discovery response

It supports both include and exclude rules with various matching strategies

Constant Summary collapse

TRACING_CONFIG_WARNING =
'Please use "tracing" instead of "com.instana.tracing" for local configuration file.'.freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



19
20
21
22
23
24
# File 'lib/instana/span_filtering/configuration.rb', line 19

def initialize
  @include_rules = []
  @exclude_rules = []
  @deactivated = false
  load_configuration
end

Instance Attribute Details

#deactivatedObject (readonly)

Returns the value of attribute deactivated.



15
16
17
# File 'lib/instana/span_filtering/configuration.rb', line 15

def deactivated
  @deactivated
end

#exclude_rulesObject (readonly)

Returns the value of attribute exclude_rules.



15
16
17
# File 'lib/instana/span_filtering/configuration.rb', line 15

def exclude_rules
  @exclude_rules
end

#include_rulesObject (readonly)

Returns the value of attribute include_rules.



15
16
17
# File 'lib/instana/span_filtering/configuration.rb', line 15

def include_rules
  @include_rules
end

Instance Method Details

#load_configurationObject

Load configuration from all available sources



27
28
29
30
31
# File 'lib/instana/span_filtering/configuration.rb', line 27

def load_configuration
  load_from_yaml
  load_from_env_vars unless rules_loaded?
  load_from_agent unless rules_loaded?
end