Project

General

Profile

« Previous | Next » 

Revision a26eb290

Added by Lukas Zapletal over 2 years ago

Fixes #34122 - Report disallowed metric labels as other

Signed-off-by: Lukas Zapletal <>

View differences:

lib/foreman/telemetry.rb
end
def increment_counter(name, value = 1, tags = {})
return unless allowed?(tags)
rename_disallowed!(tags)
@sinks.each { |x| x.increment_counter("#{prefix}_#{name}", value, tags) }
end
def set_gauge(name, value, tags = {})
return unless allowed?(tags)
rename_disallowed!(tags)
@sinks.each { |x| x.set_gauge("#{prefix}_#{name}", value, tags) }
end
def observe_histogram(name, value, tags = {})
return unless allowed?(tags)
rename_disallowed!(tags)
@sinks.each { |x| x.observe_histogram("#{prefix}_#{name}", value, tags) }
end
private
def allowed?(tags)
result = true
def rename_disallowed!(tags)
tags.each do |label, value|
regexp = @allowed_tags[label]
result &&= !!regexp.match(value) if regexp
tags[label] = 'other' if regexp && !regexp.match(value&.to_s)
end
result
end
end
end

Also available in: Unified diff