Module: FilteringLogger

Defined in:
lib/service_skeleton/filtering_logger.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#filtersObject

Returns the value of attribute filters.



6
7
8
# File 'lib/service_skeleton/filtering_logger.rb', line 6

def filters
  @filters
end

Instance Method Details

#add(s, m = nil, p = nil, &blk) ⇒ Object Also known as: log



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/service_skeleton/filtering_logger.rb', line 14

def add(s, m = nil, p = nil, &blk)
  p ||= @progname

  if @filters && p
    @filters.each do |re, sev|
      if re === p
        if s < sev
          return true
        else
          # We force the severity to nil for this call to override
          # the logger's default severity filtering logic, because
          # messages without a severity are always logged
          return super(nil, m, p, &blk)
        end
      end
    end
  end

  super
end