cat_gateway/metrics/
mod.rs

1//! This module contains submodules related to metrics report and analytics.
2
3use prometheus::{default_registry, Registry};
4
5pub(crate) mod chain_follower;
6pub(crate) mod chain_indexer;
7pub(crate) mod endpoint;
8pub(crate) mod health;
9pub(crate) mod memory;
10
11/// Initialize Prometheus metrics.
12///
13/// ## Returns
14///
15/// Returns the default prometheus registry.
16#[must_use]
17pub(crate) fn init_prometheus() -> Registry {
18    default_registry().clone()
19}
20
21/// Updates metrics to current values.
22pub(crate) async fn metrics_updater_fn() {
23    chain_follower::update();
24    memory::update();
25    health::update().await;
26}