module RubyRabbitmqJanus::Tools::Logger
@author VAILLANT Jeremy <jeremy.vaillant@dazzl.tv> @since 2.6.0
# Manage log in this gem
Create module for managing logger in many level. In Thread process. In rails apps (final app use this gem).
Prepare different output : STDOUT RemoteSyslogger (for papertrail) File
Public Class Methods
create()
click to toggle source
Configure logger used by RRJ
# File lib/rrj/tools/gem/logger.rb, line 32 def self.create @config = RubyRabbitmqJanus::Tools::Config.instance @log = initialize_logger @log.level = @config.log_level @log end
initialize_logger()
click to toggle source
Choose type logger used in application instance
# File lib/rrj/tools/gem/logger.rb, line 42 def self.initialize_logger case @config.log_type when :file then logger_file when :remote then logger_remote else logger_stdout end end
logger_file()
click to toggle source
Configure logger with output file default : `log/ruby-rabbitmq-janus.log`
# File lib/rrj/tools/gem/logger.rb, line 58 def self.logger_file ::Logger.new(@config.log_option || 'log/ruby-rabbitmq-janus.log') end
logger_remote()
click to toggle source
Configure logger with output PaperTrail service
# File lib/rrj/tools/gem/logger.rb, line 63 def self.logger_remote require 'remote_syslog_logger' RemoteSyslogLogger.new(remote_url, remote_port, program: remote_program, local_hostname: remote_hostname) end
logger_stdout()
click to toggle source
Configure logger with output SDTOUT
# File lib/rrj/tools/gem/logger.rb, line 52 def self.logger_stdout ::Logger.new($stdout) end
remote_hostname()
click to toggle source
Read url for PaperTrail and split for host
# File lib/rrj/tools/gem/logger.rb, line 88 def self.remote_hostname @config.log_option.split(':').last end
remote_port()
click to toggle source
Read url for PaperTrail and split for port
# File lib/rrj/tools/gem/logger.rb, line 78 def self.remote_port @config.log_option.split('@').first.split(':').last end
remote_program()
click to toggle source
Read url for PaperTrail and split for name app
# File lib/rrj/tools/gem/logger.rb, line 83 def self.remote_program @config.log_option.split('@').last.split(':').first end
remote_url()
click to toggle source
Read url for PaperTail and split for endpoint
# File lib/rrj/tools/gem/logger.rb, line 73 def self.remote_url @config.log_option.split(':').first end
start()
click to toggle source
Write basic information about this gem
# File lib/rrj/tools/gem/logger.rb, line 24 def self.start Log.info '### Start bin Ruby Rabbit Janus ###' Log.info "Program : #{RubyRabbitmqJanus::Tools::Config.instance.pg}" Log.info "RRJ Version : #{RubyRabbitmqJanus::VERSION}" Log.debug "\r\n#{RubyRabbitmqJanus::BANNER}" end