Class: OpenTrace::Config
- Inherits:
-
Object
- Object
- OpenTrace::Config
- Defined in:
- lib/opentrace/config.rb
Constant Summary collapse
- REQUIRED_FIELDS =
%i[endpoint api_key service].freeze
- LEVELS =
{ debug: 0, info: 1, warn: 2, error: 3, fatal: 4 }.freeze
Instance Attribute Summary collapse
-
#api_key ⇒ Object
Returns the value of attribute api_key.
-
#batch_size ⇒ Object
Returns the value of attribute batch_size.
-
#context ⇒ Object
Returns the value of attribute context.
-
#enabled ⇒ Object
Returns the value of attribute enabled.
-
#endpoint ⇒ Object
Returns the value of attribute endpoint.
-
#environment ⇒ Object
Returns the value of attribute environment.
-
#flush_interval ⇒ Object
Returns the value of attribute flush_interval.
-
#git_sha ⇒ Object
Returns the value of attribute git_sha.
-
#hostname ⇒ Object
Returns the value of attribute hostname.
-
#min_level ⇒ Object
Returns the value of attribute min_level.
-
#pid ⇒ Object
Returns the value of attribute pid.
-
#service ⇒ Object
Returns the value of attribute service.
-
#sql_duration_threshold_ms ⇒ Object
Returns the value of attribute sql_duration_threshold_ms.
-
#sql_logging ⇒ Object
Returns the value of attribute sql_logging.
-
#timeout ⇒ Object
Returns the value of attribute timeout.
Instance Method Summary collapse
- #enabled? ⇒ Boolean
-
#initialize ⇒ Config
constructor
A new instance of Config.
- #min_level_value ⇒ Object
- #valid? ⇒ Boolean
Constructor Details
#initialize ⇒ Config
Returns a new instance of Config.
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/opentrace/config.rb', line 13 def initialize @endpoint = nil @api_key = nil @service = nil @environment = nil @timeout = 1.0 @enabled = true @context = nil # nil | Hash | Proc @min_level = :debug # send everything by default @hostname = nil @pid = nil @git_sha = nil @batch_size = 50 @flush_interval = 5.0 @sql_logging = true @sql_duration_threshold_ms = 0.0 end |
Instance Attribute Details
#api_key ⇒ Object
Returns the value of attribute api_key.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def api_key @api_key end |
#batch_size ⇒ Object
Returns the value of attribute batch_size.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def batch_size @batch_size end |
#context ⇒ Object
Returns the value of attribute context.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def context @context end |
#enabled ⇒ Object
Returns the value of attribute enabled.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def enabled @enabled end |
#endpoint ⇒ Object
Returns the value of attribute endpoint.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def endpoint @endpoint end |
#environment ⇒ Object
Returns the value of attribute environment.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def environment @environment end |
#flush_interval ⇒ Object
Returns the value of attribute flush_interval.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def flush_interval @flush_interval end |
#git_sha ⇒ Object
Returns the value of attribute git_sha.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def git_sha @git_sha end |
#hostname ⇒ Object
Returns the value of attribute hostname.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def hostname @hostname end |
#min_level ⇒ Object
Returns the value of attribute min_level.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def min_level @min_level end |
#pid ⇒ Object
Returns the value of attribute pid.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def pid @pid end |
#service ⇒ Object
Returns the value of attribute service.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def service @service end |
#sql_duration_threshold_ms ⇒ Object
Returns the value of attribute sql_duration_threshold_ms.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def sql_duration_threshold_ms @sql_duration_threshold_ms end |
#sql_logging ⇒ Object
Returns the value of attribute sql_logging.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def sql_logging @sql_logging end |
#timeout ⇒ Object
Returns the value of attribute timeout.
8 9 10 |
# File 'lib/opentrace/config.rb', line 8 def timeout @timeout end |
Instance Method Details
#enabled? ⇒ Boolean
35 36 37 |
# File 'lib/opentrace/config.rb', line 35 def enabled? @enabled && valid? end |
#min_level_value ⇒ Object
39 40 41 |
# File 'lib/opentrace/config.rb', line 39 def min_level_value LEVELS[min_level.to_s.downcase.to_sym] || 0 end |
#valid? ⇒ Boolean
31 32 33 |
# File 'lib/opentrace/config.rb', line 31 def valid? REQUIRED_FIELDS.all? { |f| value = send(f); value.is_a?(String) && !value.empty? } end |