Class: LogStruct::Configuration
- Inherits:
-
T::Struct
- Object
- T::Struct
- LogStruct::Configuration
- Extended by:
- T::Sig
- Includes:
- Sorbet::SerializeSymbolKeys
- Defined in:
- lib/log_struct/configuration.rb
Overview
Core configuration class that provides a type-safe API
Instance Attribute Summary collapse
-
#color_map ⇒ Hash{Symbol => Symbol}?
Custom color map for the color formatter.
-
#enable_color_output ⇒ Boolean
Enable colorful human formatter in development.
-
#enabled ⇒ Boolean
------------------------------------------------------------------------------------- Props -------------------------------------------------------------------------------------.
-
#enabled_environments ⇒ Array<Symbol>
Returns the value of prop
enabled_environments. -
#error_handling_modes ⇒ ConfigStruct::ErrorHandlingModes
readonly
How to handle errors from various sources.
-
#error_reporting_handler ⇒ Handlers::ErrorReporter?
Custom handler for error reporting Default: Errors are handled by MultiErrorReporter (auto-detects Sentry, Bugsnag, Rollbar, Honeybadger, etc.).
-
#filter_noisy_loggers ⇒ Boolean
Filter noisy loggers (ActionView, etc.).
-
#filters ⇒ ConfigStruct::Filters
readonly
Returns the value of prop
filters. -
#integrations ⇒ ConfigStruct::Integrations
readonly
Returns the value of prop
integrations. -
#local_environments ⇒ Array<Symbol>
Returns the value of prop
local_environments. -
#prefer_json_in_development ⇒ Boolean
Prefer production-style JSON in development when LogStruct is enabled.
-
#string_scrubbing_handler ⇒ Handlers::StringScrubber?
Custom log scrubbing handler for any additional string scrubbing Default: nil.
Class Method Summary collapse
Instance Method Summary collapse
Methods included from Sorbet::SerializeSymbolKeys
Constructor Details
#initialize(enabled: true, enabled_environments:, local_environments:, prefer_json_in_development: true, enable_color_output: true, color_map: nil, filter_noisy_loggers: false, integrations:, filters:, string_scrubbing_handler: nil, error_reporting_handler: nil, error_handling_modes:) ⇒ void
|
|
# File '' prop :enabled, T::Boolean, default: true prop :enabled_environments, T::Array[Symbol], factory: -> { [:test, :production] } prop :local_environments, T::Array[Symbol], factory: -> { [:development, :test] } prop :prefer_json_in_development, T::Boolean, default: true prop :enable_color_output, T::Boolean, default: true prop :color_map, T.nilable(T::Hash[Symbol, Symbol]), default: nil prop :filter_noisy_loggers, T::Boolean, default: false const :integrations, ConfigStruct::Integrations, factory: -> { ConfigStruct::Integrations.new } const :filters, ConfigStruct::Filters, factory: -> { ConfigStruct::Filters.new } prop :string_scrubbing_handler, T.nilable(Handlers::StringScrubber) prop :error_reporting_handler, T.nilable(Handlers::ErrorReporter), default: nil const :error_handling_modes, ConfigStruct::ErrorHandlingModes, factory: -> { ConfigStruct::ErrorHandlingModes.new } |
Instance Attribute Details
#color_map ⇒ Hash{Symbol => Symbol}?
Custom color map for the color formatter
|
|
# File '' prop :color_map, T.nilable(T::Hash[Symbol, Symbol]), default: nil |
#enable_color_output ⇒ Boolean
Enable colorful human formatter in development
|
|
# File '' prop :enable_color_output, T::Boolean, default: true |
#enabled ⇒ Boolean
Props
|
|
# File '' prop :enabled, T::Boolean, default: true |
#enabled_environments ⇒ Array<Symbol>
Returns the value of prop enabled_environments.
|
|
# File '' prop :enabled_environments, T::Array[Symbol], factory: -> { [:test, :production] } |
#error_handling_modes ⇒ ConfigStruct::ErrorHandlingModes (readonly)
How to handle errors from various sources
|
|
# File '' const :error_handling_modes, ConfigStruct::ErrorHandlingModes, factory: -> { ConfigStruct::ErrorHandlingModes.new } |
#error_reporting_handler ⇒ Handlers::ErrorReporter?
Custom handler for error reporting Default: Errors are handled by MultiErrorReporter (auto-detects Sentry, Bugsnag, Rollbar, Honeybadger, etc.)
|
|
# File '' prop :error_reporting_handler, T.nilable(Handlers::ErrorReporter), default: nil |
#filter_noisy_loggers ⇒ Boolean
Filter noisy loggers (ActionView, etc.)
|
|
# File '' prop :filter_noisy_loggers, T::Boolean, default: false |
#filters ⇒ ConfigStruct::Filters (readonly)
Returns the value of prop filters.
|
|
# File '' const :filters, ConfigStruct::Filters, factory: -> { ConfigStruct::Filters.new } |
#integrations ⇒ ConfigStruct::Integrations (readonly)
Returns the value of prop integrations.
|
|
# File '' const :integrations, ConfigStruct::Integrations, factory: -> { ConfigStruct::Integrations.new } |
#local_environments ⇒ Array<Symbol>
Returns the value of prop local_environments.
|
|
# File '' prop :local_environments, T::Array[Symbol], factory: -> { [:development, :test] } |
#prefer_json_in_development ⇒ Boolean
Prefer production-style JSON in development when LogStruct is enabled
|
|
# File '' prop :prefer_json_in_development, T::Boolean, default: true |
#string_scrubbing_handler ⇒ Handlers::StringScrubber?
Custom log scrubbing handler for any additional string scrubbing Default: nil
|
|
# File '' prop :string_scrubbing_handler, T.nilable(Handlers::StringScrubber) |
Class Method Details
.instance ⇒ Configuration
63 64 65 |
# File 'lib/log_struct/configuration.rb', line 63 def self.instance @instance ||= T.let(Configuration.new, T.nilable(Configuration)) end |
.set_instance(config) ⇒ void
This method returns an undefined value.
68 69 70 |
# File 'lib/log_struct/configuration.rb', line 68 def self.set_instance(config) @instance = config end |