Skip metric validation for metrics that are deprecated or removed
We can skip validation for metrics definitions with
status: deprecated
status: removed
https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/usage/metric_definition.rb#L29
def validate!
unless skip_validation?
self.class.schemer.validate(attributes.stringify_keys).each do |error|
error_message = <<~ERROR_MSG
Error type: #{error['type']}
Data: #{error['data']}
Path: #{error['data_pointer']}
Details: #{error['details']}
Metric file: #{path}
ERROR_MSG
Gitlab::ErrorTracking.track_and_raise_for_dev_exception(Gitlab::Usage::Metric::InvalidMetricError.new(error_message))
end
end
end
def definitions(skip_validation: false)
@skip_validation = skip_validation
@definitions ||= load_all!
end