Allow only implemented operation for DatabaseMetrics in instrumentation classes
Add a check for database instrumented classes so we can use only implemented operations.
Raise error if an incorrect operation is used.
Allowed operations are count
, distinct_count
(We might add more meanwhile.)
# correct
module Gitlab
module Usage
module Metrics
module Instrumentations
class CountBoardsMetric < DatabaseMetric
operation :count
relation { Board }
end
end
end
end
end
# incorrect
module Gitlab
module Usage
module Metrics
module Instrumentations
class CountBoardsMetric < DatabaseMetric
operation :other_operation
relation { Board }
end
end
end
end
end
This would help us validate the operations we use in database metrics and avoid unexpected usage of operations
Edited by Alina Mihaila