Display memory as MB in live dashboard

With kilobyte the resulting numbers got too large and were cut off
in the charts, making them useless. However, even an idle Akkoma
server’s memory usage is in the lower hundreths of megabytes, so
we don’t need this much precision to begin with for the dashboard.

Other metric users might prefer base units and can handle scaling in a
smarter way, so keep this configurable.
This commit is contained in:
Oneric 2024-02-03 18:21:09 +01:00
parent 8f8e1ff214
commit 16197ff57a

View file

@ -102,7 +102,7 @@ defp distribution_metrics do
end end
# Summary metrics are currently not (yet) supported by the prometheus exporter # Summary metrics are currently not (yet) supported by the prometheus exporter
defp summary_metrics do defp summary_metrics(byte_unit) do
[ [
# Phoenix Metrics # Phoenix Metrics
summary("phoenix.endpoint.stop.duration", summary("phoenix.endpoint.stop.duration",
@ -119,7 +119,7 @@ defp summary_metrics do
summary("pleroma.repo.query.idle_time", unit: {:native, :millisecond}), summary("pleroma.repo.query.idle_time", unit: {:native, :millisecond}),
# VM Metrics # VM Metrics
summary("vm.memory.total", unit: {:byte, :kilobyte}), summary("vm.memory.total", unit: {:byte, byte_unit}),
summary("vm.total_run_queue_lengths.total"), summary("vm.total_run_queue_lengths.total"),
summary("vm.total_run_queue_lengths.cpu"), summary("vm.total_run_queue_lengths.cpu"),
summary("vm.total_run_queue_lengths.io") summary("vm.total_run_queue_lengths.io")
@ -136,7 +136,7 @@ defp common_metrics do
end end
def prometheus_metrics, do: common_metrics() ++ distribution_metrics() def prometheus_metrics, do: common_metrics() ++ distribution_metrics()
def live_dashboard_metrics, do: common_metrics() ++ summary_metrics() def live_dashboard_metrics, do: common_metrics() ++ summary_metrics(:megabyte)
defp periodic_measurements do defp periodic_measurements do
[ [