Cleanup stale Prometheus metrics
### Summary
Stale Prometheus metrics are not removed on Unicorn start-up. Only on restarts.
Stale Prometheus metrics are not removed if envvar `prometheus_multiproc_dir` is missing which is true for e.g. `development` environment.
### Steps to reproduce
* Remove stale metrics (`rm -fr tmp/prometheus_multiproc_dir/*.db`)
* Start Unicorn (e.g via GDK `gdk run`)
* Visit http://127.0.0.1/-/metrics. `http_requests_total{method="get"}` should read `2` (actually why not `1` :question:)
* Reload http://127.0.0.1/-/metrics. `http_requests_total` increases
* Stop Unicorn
* Start Unicorn
* Visit http://127.0.0.1/-/metrics. `http_requests_total` is not reset
### What is the current *bug* behavior?
Stale Prometheus metrics are not removed
* after starting Unicorn
* in `development` environment
### What is the expected *correct* behavior?
Stale Prometheus metrics are removed
* after Unicorn has been started
* in `development` environment
### Possible fixes
* Delete stale metrics also in the [`on_worker_start`](https://gitlab.com/gitlab-org/gitlab-ce/blob/fac725c9e54bead036ca1ad5e2da0b3441aecbdf/config/initializers/7_prometheus_metrics.rb#L29) callback.
* Use `Prometheus::Client.configuration.multiprocess_files_dir` instead of `ENV['prometheus_multiproc_dir']` [when deleting stale metrics](https://gitlab.com/gitlab-org/gitlab-ce/blob/fac725c9e54bead036ca1ad5e2da0b3441aecbdf/config/initializers/7_prometheus_metrics.rb#L45)
```ruby
unless Rails.env.test?
prometheus_multiproc_dir = Prometheus::Client.configuration.multiprocess_files_dir
old_metrics = Dir[File.join(prometheus_multiproc_dir, '*.db')]
FileUtils.rm_rf(old_metrics)
end
```
/cc @bjk\-gitlab
issue