Module: AppLogger
- Included in:
- FaradayMiddleware, RackMiddleware
- Defined in:
- lib/app_logger.rb,
lib/app_logger/version.rb,
lib/app_logger/rack_middleware.rb,
lib/app_logger/faraday_middleware.rb
Defined Under Namespace
Classes: FaradayMiddleware, RackMiddleware
Constant Summary collapse
- DATE_PATTERN =
'%Y-%m-%dT%H:%M:%S:%L%zZ'
- LOG_PATH =
"log/#{ENV['RACK_ENV']}.log"
- VERSION =
'1.2.0'
Class Attribute Summary collapse
-
.output_format ⇒ Object
Returns the value of attribute output_format.
-
.silence_stdout ⇒ Object
Returns the value of attribute silence_stdout.
Instance Method Summary collapse
Class Attribute Details
.output_format ⇒ Object
Returns the value of attribute output_format.
9 10 11 |
# File 'lib/app_logger.rb', line 9 def output_format @output_format end |
.silence_stdout ⇒ Object
Returns the value of attribute silence_stdout.
8 9 10 |
# File 'lib/app_logger.rb', line 8 def silence_stdout @silence_stdout end |
Instance Method Details
#create_logger(level: :info) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/app_logger.rb', line 12 def create_logger(level: :info) FileUtils.mkdir_p(File.dirname(LOG_PATH)) Logging.backtrace(true) json_layout = Logging.layouts.json(date_pattern: DATE_PATTERN) stdout_layout = if AppLogger.output_format == :json json_layout else Logging.layouts.pattern(date_pattern: DATE_PATTERN) end Logging.logger['App'].tap do |logger| logger.appenders = if AppLogger.silence_stdout [Logging.appenders.file(LOG_PATH, layout: json_layout)] else [Logging.appenders.file(LOG_PATH, layout: json_layout), Logging.appenders.stdout(layout: stdout_layout)] end end end |