class ChiliLogger
class for centralizing Creative's logging logic
class for centralizing Creative's logging logic
class for centralizing Creative's logging logic
class for centralizing Creative's logging logic
class for centralizing Creative's logging logic
class for wrapping all other gem's classes
class for centralizing Creative's logging logic
class for centralizing Creative's logging logic
class for centralizing Creative's logging logic
class for centralizing Creative's logging logic
class for centralizing Creative's logging logic
class for centralizing Creative's logging logic
class for centralizing Creative's logging logic
class for centralizing Creative's logging logic
class for centralizing Creative's logging logic
class for centralizing Creative's logging logic
class for centralizing Creative's logging logic
Constants
- VERSION
Attributes
Public Class Methods
# File lib/chili_logger.rb, line 21 def initialize @default = ChiliLogger::Values::Default.new @user_uniformizer = ChiliLogger::Values::TypeUniformizer::User.new @desc_uniformizer = ChiliLogger::Values::TypeUniformizer::Desc.new @main_content_uniformizer = ChiliLogger::Values::TypeUniformizer::MainContent.new end
Public Instance Methods
# File lib/chili_logger.rb, line 28 def config(config) @deactivated = config[:deactivated] || false # ChilLogger can be deactivated for test environents config_logging_error_handler(config) config_msg_writer(config) config_msg_broker(config) config_unpublished_logs_manager @current_log_accessor = CurrentLogAccessor.new(@msg_broker, @msg_writer) end
# File lib/chili_logger.rb, line 39 def current_log @current_log_accessor end
# File lib/chili_logger.rb, line 53 def publish_instant_log(**options) # enforces that all attributes have valid primitive types if options options[:desc] = @desc_uniformizer.desc(options[:desc]) options[:user] = @user_uniformizer.user(options[:user]) options[:main_content] = @main_content_uniformizer.main_content(options[:main_content]) end message = @msg_writer.write(options) @msg_broker.publish(message) end
# File lib/chili_logger.rb, line 65 def republish_unpublished_logs @unpublished_logs_manager.republish end
# File lib/chili_logger.rb, line 43 def start_new_log(**options) current_log.clear_log_info current_log.update_desc(options[:desc]) current_log.update_user(options[:user]) current_log.update_main_content(options[:main_content]) current_log end
Private Instance Methods
# File lib/chili_logger.rb, line 71 def config_logging_error_handler(general_config) fallback_name = general_config[:fallback_broker] fallback_config = general_config[:fallback_broker_config] @logging_error_handler = LoggingErrorHandler.new(fallback_name, fallback_config) end
# File lib/chili_logger.rb, line 88 def config_msg_broker(general_config) msg_broker_name = general_config[:msg_broker_name] msg_broker_config = general_config[:msg_broker_config] @msg_broker = MainBroker.new(msg_broker_name, msg_broker_config, @logging_error_handler) end
# File lib/chili_logger.rb, line 77 def config_msg_writer(general_config) msg_writer_config = { env: general_config[:log_env]&.downcase, layer: general_config[:log_layer]&.downcase, server_url: general_config[:server_url], cloud_provider: general_config[:cloud_provider] } @msg_writer = MessageWriter.new(msg_writer_config) end
# File lib/chili_logger.rb, line 95 def config_unpublished_logs_manager @unpublished_logs_manager = UnpublishedLogsManager.new(@msg_broker, @logging_error_handler) end