Adding prometheus instrumenting to gitlab webapp
Description
Instrument Gitlab using the prometheus API to make it easier to track, detect and manage issues with Gitlab.
Once instrumenting is added it becomes possible to scrape Gitlab in order to detect performance issues, changes in performance, reliability issues, debug problems, spot performance trends across versions or over uptime.
Proposal
Steps to integrating this:
-
Create a multi-proccess mode for the existing ruby prometheus library. -
Update the existing ruby prometheus library to current standards. Being tracked in: client_ruby issue 9. -
Have a way to set the prometheus_multiproc_dir
environment variable within unicorn. -
Document 'prometheus_multiproc_dir' usage -
Link 'prometheus_multiproc_dir' in config.ru
and Application Settings in Rails app -
Metrics endpoint name. -
There's some existing influx instrumentation - make use of that. -
Work with gitlab.com production engineering to find important metrics that are required.
Links / references
Edited by username-removed-676946