Module: RubyRabbitmqJanus::Tools::Logger
- Defined in:
- lib/rrj/tools/gem/log.rb
Overview
# 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
Class Method Summary collapse
-
.create ⇒ Object
Configure logger used by RRJ.
-
.initialize_logger ⇒ Object
Choose type logger used in application instance.
-
.logger_file ⇒ Object
Configure logger with output file default : ‘log/ruby-rabbitmq-janus.log`.
-
.logger_remote ⇒ Object
Configure logger with output PaperTrail service.
-
.logger_stdout ⇒ Object
Configure logger with output SDTOUT.
-
.remote_hostname ⇒ Object
Read url for PaperTrail and split for host.
-
.remote_port ⇒ Object
Read url for PaperTrail and split for port.
-
.remote_program ⇒ Object
Read url for PaperTrail and split for name app.
-
.remote_url ⇒ Object
Read url for PaperTail and split for endpoint.
-
.start ⇒ Object
Write basic information about this gem.
Class Method Details
.create ⇒ Object
Configure logger used by RRJ
32 33 34 35 36 37 38 39 |
# File 'lib/rrj/tools/gem/log.rb', line 32 def self.create @config = RubyRabbitmqJanus::Tools::Config.instance @log = initialize_logger @log.level = @config.log_level @log end |
.initialize_logger ⇒ Object
Choose type logger used in application instance
42 43 44 45 46 47 48 49 50 |
# File 'lib/rrj/tools/gem/log.rb', line 42 def self.initialize_logger case @config.log_type when :stdout then logger_stdout when :file then logger_file when :remote then logger_remote else logger_stdout end end |
.logger_file ⇒ Object
Configure logger with output file default : ‘log/ruby-rabbitmq-janus.log`
59 60 61 |
# File 'lib/rrj/tools/gem/log.rb', line 59 def self.logger_file ::Logger.new(@config.log_option || 'log/ruby-rabbitmq-janus.log') end |
.logger_remote ⇒ Object
Configure logger with output PaperTrail service
64 65 66 67 68 69 70 71 |
# File 'lib/rrj/tools/gem/log.rb', line 64 def self.logger_remote require 'remote_syslog_logger' RemoteSyslogLogger.new(remote_url, remote_port, program: remote_program, local_hostname: remote_hostname) end |
.logger_stdout ⇒ Object
Configure logger with output SDTOUT
53 54 55 |
# File 'lib/rrj/tools/gem/log.rb', line 53 def self.logger_stdout ::Logger.new(STDOUT) end |
.remote_hostname ⇒ Object
Read url for PaperTrail and split for host
89 90 91 |
# File 'lib/rrj/tools/gem/log.rb', line 89 def self.remote_hostname @config.log_option.split(':').last end |
.remote_port ⇒ Object
Read url for PaperTrail and split for port
79 80 81 |
# File 'lib/rrj/tools/gem/log.rb', line 79 def self.remote_port @config.log_option.split('@').first.split(':').last end |
.remote_program ⇒ Object
Read url for PaperTrail and split for name app
84 85 86 |
# File 'lib/rrj/tools/gem/log.rb', line 84 def self.remote_program @config.log_option.split('@').last.split(':').first end |
.remote_url ⇒ Object
Read url for PaperTail and split for endpoint
74 75 76 |
# File 'lib/rrj/tools/gem/log.rb', line 74 def self.remote_url @config.log_option.split(':').first end |
.start ⇒ Object
Write basic information about this gem
24 25 26 27 28 29 |
# File 'lib/rrj/tools/gem/log.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 |