+ defp summary_metrics do
+ [
+ # Phoenix Metrics
+ summary("phoenix.endpoint.stop.duration",
+ unit: {:native, :millisecond}
+ ),
+ summary("phoenix.router_dispatch.stop.duration",
+ tags: [:route],
+ unit: {:native, :millisecond}
+ ),
+ summary("pleroma.repo.query.total_time", unit: {:native, :millisecond}),
+ summary("pleroma.repo.query.decode_time", unit: {:native, :millisecond}),
+ summary("pleroma.repo.query.query_time", unit: {:native, :millisecond}),
+ summary("pleroma.repo.query.queue_time", unit: {:native, :millisecond}),
+ summary("pleroma.repo.query.idle_time", unit: {:native, :millisecond}),
+
+ # VM Metrics
+ summary("vm.memory.total", unit: {:byte, :kilobyte}),
+ summary("vm.total_run_queue_lengths.total"),
+ summary("vm.total_run_queue_lengths.cpu"),
+ summary("vm.total_run_queue_lengths.io"),
+ last_value("pleroma.local_users.total"),
+ last_value("pleroma.domains.total"),
+ last_value("pleroma.local_statuses.total"),
+ last_value("pleroma.remote_users.total")
+ ]
+ end
+
+ def prometheus_metrics, do: summary_metrics() ++ distribution_metrics()
+ def live_dashboard_metrics, do: summary_metrics()
+