[meta] Add metrics instrumentation to GitLab Internals
## Need In order to measure performance improvements for https://gitlab.com/gitlab-org/gitlab-ce/issues/26789 we need to add Prometheus metrics endpoints and instrument the code to provide stats. ## Approach There are a number of existing metrics sources and there are some gaps. We first need to identifiy the gaps. * Identify gaps where we have no metrics to show performance. * Add Prometheus client library support where possible. * Replace existing metrics (ie InfluxDB) with Prometheus native methods. * Add exporters for 3rd party software without native Prometheus support. * Add log-based metrics generators where necessary (mtail). * Add blackbox probing for end-to-end testing. ## Benefit Adding instrumentation with Prometheus provides us the ability to measure our performance gains, and alert on performance degradation. ## Competition Some other approaches are possible, and may be useful as temporary stop-gaps until native support is completed. * Bridging InfluxDB data into Prometheus. [0] * Logs-based mtail metrics generators. [1] [0]: https://gitlab.com/gitlab-com/infrastructure/issues/1022 [1]: https://gitlab.com/gitlab-cookbooks/gitlab-prometheus/merge_requests/183
issue