Skip to content

Commit

Permalink
feat(metrics): add rust-peer version info in prometheus metrics [fixes
Browse files Browse the repository at this point in the history
…NET-422] (#1552)

* add rust-peer version info in prometheus metrics
  • Loading branch information
kmd-fl committed Apr 6, 2023
1 parent 6557add commit 460446b
Show file tree
Hide file tree
Showing 3 changed files with 27 additions and 0 deletions.
17 changes: 17 additions & 0 deletions crates/peer-metrics/src/info.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
use prometheus_client::metrics::info::Info;
use prometheus_client::registry::Registry;

pub fn add_info_metrics(
registry: &mut Registry,
node_version: String,
air_version: String,
spell_version: String,
) {
let sub_registry = registry.sub_registry_with_prefix("rust_peer");
let info = Info::new(vec![
("peer-version", node_version),
("air-version", air_version),
("spell-version", spell_version),
]);
sub_registry.register("build", "Rust Peer Info", info);
}
2 changes: 2 additions & 0 deletions crates/peer-metrics/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ pub use connection_pool::ConnectionPoolMetrics;
pub use connectivity::ConnectivityMetrics;
pub use connectivity::Resolution;
pub use dispatcher::DispatcherMetrics;
pub use info::add_info_metrics;
pub use particle_executor::{FunctionKind, ParticleExecutorMetrics};
pub use services_metrics::{
ServiceCallStats, ServiceMemoryStat, ServiceType, ServicesMetrics, ServicesMetricsBackend,
Expand All @@ -17,6 +18,7 @@ pub use vm_pool::VmPoolMetrics;
mod connection_pool;
mod connectivity;
mod dispatcher;
mod info;
mod network_protocol;
mod particle_executor;
mod services_metrics;
Expand Down
8 changes: 8 additions & 0 deletions particle-node/src/node.rs
Original file line number Diff line number Diff line change
Expand Up @@ -266,6 +266,14 @@ impl<RT: AquaRuntime> Node<RT> {
spell_version,
allowed_binaries,
};
if let Some(m) = metrics_registry.as_mut() {
peer_metrics::add_info_metrics(
m,
node_info.node_version.to_string(),
node_info.air_version.to_string(),
node_info.spell_version.clone(),
);
}
custom_service_functions.extend_one(make_peer_builtin(node_info));

custom_service_functions.into_iter().for_each(
Expand Down

0 comments on commit 460446b

Please sign in to comment.