module ServiceLogger

Constants

VERSION

Public Class Methods

configure() { |service_logger_config| ... } click to toggle source
# File lib/service_logger.rb, line 9
def self.configure
  self.configuration ||= service_logger_config
  yield service_logger_config
end
default_custom_options() click to toggle source
# File lib/service_logger.rb, line 30
def self.default_custom_options
  { service_name: ServiceLogger.service_name, environment: ServiceLogger.environment, version: ServiceLogger::VERSION }
end
environment() click to toggle source
# File lib/service_logger.rb, line 22
def self.environment
  @environment ||= default_environment
end
service_logger_config() click to toggle source
# File lib/service_logger.rb, line 26
def self.service_logger_config
  application.config.service_logger
end
service_name() click to toggle source
# File lib/service_logger.rb, line 18
def self.service_name
  @service_name ||= default_service_name
end
setup(app) click to toggle source
# File lib/service_logger.rb, line 14
def self.setup(app)
  self.application = app
end

Private Class Methods

default_environment() click to toggle source
# File lib/service_logger.rb, line 40
def self.default_environment
  { name: service_logger_config.environment || Rails.env }
end
default_service_name() click to toggle source
# File lib/service_logger.rb, line 36
def self.default_service_name
  service_logger_config.service_name || Rails.application.class.to_s
end

Private Instance Methods

logger() click to toggle source
# File lib/service_logger.rb, line 51
def logger
  raise NotImplementedError unless defined?(Rails)
  Rails.logger
end
service_log(event, event_details, tag_name="analytics") click to toggle source
# File lib/service_logger.rb, line 44
def service_log(event, event_details, tag_name="analytics")
  logger.tagged(tag_name) do
    message = { service_name: ServiceLogger.service_name, environment: ServiceLogger.environment, version: ServiceLogger::VERSION, event: event, event_details: event_details }
    logger.info(message.to_json)
  end
end