lib/logster/base_store.rb in logster-2.2.0 vs lib/logster/base_store.rb in logster-2.3.0
- old
+ new
@@ -99,10 +99,24 @@
# returns an array of strings each of which must be convertible to regexp
def get_patterns(set_name)
not_implemented
end
+ # increments the number of messages that have been suppressed by a pattern
+ def increment_ignore_count(pattern)
+ end
+
+ # removes number of suppressed messages by a pattern
+ def remove_ignore_count(pattern)
+ end
+
+ # returns a hash that maps patterns to the number of messages they
+ # have suppressed
+ def get_all_ignore_count
+ {}
+ end
+
def report(severity, progname, msg, opts = {})
return if (!msg || (String === msg && msg.empty?)) && skip_empty
return if level && severity < level
message = Logster::Message.new(severity, progname, msg, opts[:timestamp], count: opts[:count])
@@ -123,16 +137,27 @@
message.backtrace = backtrace
else
message.backtrace = caller.join("\n")
end
- return if ignore && ignore.any? { |pattern| message =~ pattern }
+ return if ignore && ignore.any? do |pattern|
+ if message =~ pattern
+ val = Regexp === pattern ? pattern.inspect : pattern.to_s
+ increment_ignore_count(val)
+ true
+ end
+ end
if Logster.config.enable_custom_patterns_via_ui || allow_custom_patterns
custom_ignore = @patterns_cache.fetch do
Logster::SuppressionPattern.find_all(store: self)
end
- return if custom_ignore.any? { |pattern| message =~ pattern }
+ return if custom_ignore.any? do |pattern|
+ if message =~ pattern
+ increment_ignore_count(pattern.inspect)
+ true
+ end
+ end
end
similar = nil
if Logster.config.allow_grouping