Files
Markus Kahl 068a4d8620 expose reduced set of metrics used for auto scaling
We have an existing OPENPROJECT_PROMETHEUS_EXPORT which is
using the yabeda gems for prometheus metrics including ones
for puma.

We have found even just requiring those gems to cause a
memory leak in the past so I don't want to rely on this
for this auto scaling use case, especially when we just
need a very reduced set of puma metrics for it.

We have also evaluated the prometheus_exporter gem
as an alternative but it too suffers from a memory leak
in the puma collector specifically.

Hence this very simple metrics endpoint implementation on
top of the existing prometheus metrics.
That being said, by default both cannot be used at the same
time as they use the same port.
You can, however, configure the port for this feature to
avoid it.

We may want to include the web brick server in the health check
in the future, although there is not a whole lot going on
that could cause it to crash.
2025-09-25 11:29:34 +02:00
..