module Fluent::PluginLoggerMixin

Attributes

log[RW]

Public Class Methods

included(klass) click to toggle source
# File lib/fluent/log.rb, line 408
def self.included(klass)
  klass.instance_eval {
    desc 'Allows the user to set different levels of logging for each plugin.'
    config_param :@log_level, :string, default: nil, alias: :log_level # 'log_level' will be warned as deprecated
  }
end
new() click to toggle source
Calls superclass method
# File lib/fluent/log.rb, line 415
def initialize
  super

  @log = $log # Use $log object directly by default
end

Public Instance Methods

configure(conf) click to toggle source
Calls superclass method
# File lib/fluent/log.rb, line 423
def configure(conf)
  super

  if level = conf['@log_level']
    unless @log.is_a?(PluginLogger)
      @log = PluginLogger.new($log.dup)
    end
    @log.level = level
    @log.optional_header = "[#{self.class.name}#{plugin_id_configured? ? "(" + @id + ")" : ""}] "
    @log.optional_attrs = {}
  end
end
start() click to toggle source
Calls superclass method
# File lib/fluent/log.rb, line 436
def start
  @log.reset
  super
end
terminate() click to toggle source
Calls superclass method
# File lib/fluent/log.rb, line 441
def terminate
  super
  @log.reset
end