Migrate Service Ping metrics using `#redis_usage_data` in `usage_data.rb` to instrumentation classes
Background
This is a follow up to #378475 (comment 1287864785) It was discovered that there is separate family of Redis errors Redis::TimeoutError
that are not being handled as part of #redis_usage_data
In case of Redis metrics added directly via usage_data.rb
it creates risk of whole Service Ping payload reporting process failing upon those metrics raising the error.
Goal
Migrate metrics instrumented at lines
-
https://gitlab.com/gitlab-org/gitlab/-/blob/e34cb724dd30ca203c4e914da82c40d34ab76013/lib/gitlab/usage_data.rb#L388 - was removed in 33867e98 -
https://gitlab.com/gitlab-org/gitlab/-/blob/e34cb724dd30ca203c4e914da82c40d34ab76013/lib/gitlab/usage_data.rb#L588 -
https://gitlab.com/gitlab-org/gitlab/-/blob/e34cb724dd30ca203c4e914da82c40d34ab76013/lib/gitlab/usage_data.rb#L589
To instrumentation classes because they are secured with handle all case at https://gitlab.com/gitlab-org/gitlab/-/blob/e34cb724dd30ca203c4e914da82c40d34ab76013/lib/gitlab/usage/service_ping/instrumented_payload.rb#L37 that will secure their execution
Edited by Niko Belokolodov