Skip to content

Commit c145cd2

Browse files
committed
refactoring prometheus interface for message memo: made register_gauge_with_label does not imply "other_node" as label name, register_gauge_with_other_node_label does.
1 parent ecd8582 commit c145cd2

File tree

2 files changed

+45
-39
lines changed

2 files changed

+45
-39
lines changed

crates/ethcore/src/engines/hbbft/hbbft_message_memorium.rs

Lines changed: 37 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -988,7 +988,7 @@ impl PrometheusMetrics for NodeStakingEpochHistory {
988988

989989
let node_id = self.get_node_id().0 .0;
990990

991-
let label = std::format!(
991+
let other_node = std::format!(
992992
"{:x}{:x}{:x}{:x}{:x}{:x}{:x}{:x}",
993993
node_id[0],
994994
node_id[1],
@@ -1001,56 +1001,56 @@ impl PrometheusMetrics for NodeStakingEpochHistory {
10011001
);
10021002

10031003
//r.register_gauge_with_label(name, help, label, value)
1004-
r.register_gauge_with_label(
1005-
format!("cumulative_lateness").as_str(),
1006-
format!("cumulative lateness").as_str(),
1007-
label.as_str(),
1004+
r.register_gauge_with_other_node_label(
1005+
"cumulative_lateness",
1006+
"cumulative lateness",
1007+
other_node.as_str(),
10081008
self.cumulative_lateness as i64,
10091009
);
10101010

1011-
r.register_gauge_with_label(
1012-
format!("sealing_blocks_good").as_str(),
1013-
format!("good sealed block messages").as_str(),
1014-
label.as_str(),
1011+
r.register_gauge_with_other_node_label(
1012+
"sealing_blocks_good",
1013+
"good sealed block messages",
1014+
other_node.as_str(),
10151015
self.sealing_blocks_good.len() as i64,
10161016
);
10171017

1018-
r.register_gauge_with_label(
1019-
format!("sealing_blocks_late").as_str(),
1020-
format!("late sealed blocks").as_str(),
1021-
label.as_str(),
1018+
r.register_gauge_with_other_node_label(
1019+
"sealing_blocks_late",
1020+
"late sealed blocks",
1021+
other_node.as_str(),
10221022
self.sealing_blocks_late.len() as i64,
10231023
);
10241024

1025-
r.register_gauge_with_label(
1026-
format!("sealing_blocks_bad").as_str(),
1027-
format!("bad block seals").as_str(),
1028-
label.as_str(),
1025+
r.register_gauge_with_other_node_label(
1026+
"sealing_blocks_bad",
1027+
"bad block seals",
1028+
other_node.as_str(),
10291029
self.sealing_blocks_bad.len() as i64,
10301030
);
10311031

10321032
// last_good_sealing_message: u64,
10331033
// last_late_sealing_message: u64,
10341034
// last_error_sealing_message: u64,
10351035

1036-
r.register_gauge_with_label(
1037-
format!("last_good_sealing_message").as_str(),
1038-
format!("block number").as_str(),
1039-
label.as_str(),
1036+
r.register_gauge_with_other_node_label(
1037+
"last_good_sealing_message",
1038+
"block number",
1039+
other_node.as_str(),
10401040
self.last_good_sealing_message as i64,
10411041
);
10421042

1043-
r.register_gauge_with_label(
1044-
format!("last_late_sealing_message").as_str(),
1045-
format!("block number").as_str(),
1046-
label.as_str(),
1043+
r.register_gauge_with_other_node_label(
1044+
"last_late_sealing_message",
1045+
"block number",
1046+
other_node.as_str(),
10471047
self.last_late_sealing_message as i64,
10481048
);
10491049

1050-
r.register_gauge_with_label(
1051-
format!("last_error_sealing_message").as_str(),
1052-
format!("block number").as_str(),
1053-
label.as_str(),
1050+
r.register_gauge_with_other_node_label(
1051+
"last_error_sealing_message",
1052+
"block number",
1053+
other_node.as_str(),
10541054
self.last_error_sealing_message as i64,
10551055
);
10561056

@@ -1060,17 +1060,17 @@ impl PrometheusMetrics for NodeStakingEpochHistory {
10601060
// num_faulty_messages: u64,
10611061
// num_good_messages: u64,
10621062

1063-
r.register_gauge_with_label(
1064-
format!("last_message_good").as_str(),
1065-
format!("block number").as_str(),
1066-
label.as_str(),
1063+
r.register_gauge_with_other_node_label(
1064+
"last_message_good",
1065+
"block number",
1066+
other_node.as_str(),
10671067
self.last_message_good as i64,
10681068
);
10691069

1070-
r.register_gauge_with_label(
1071-
format!("last_message_faulty").as_str(),
1072-
format!("block number").as_str(),
1073-
label.as_str(),
1070+
r.register_gauge_with_other_node_label(
1071+
"last_message_faulty",
1072+
"block number",
1073+
other_node.as_str(),
10741074
self.last_message_faulty as i64,
10751075
);
10761076
}

crates/util/stats/src/lib.rs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,15 @@ impl PrometheusRegistry {
7070
.expect("prometheus identifiers must be are unique");
7171
}
7272

73+
/// Adds a new prometheus gauge with a "other_node" label.
74+
/// Designed for tracking communication partner values.
75+
pub fn register_gauge_with_other_node_label(&mut self, name: &str, help: &str, other_node: &str, value: i64) {
76+
self.register_gauge_with_label(name, help, "other_node", other_node, value);
77+
}
78+
7379
/// Adds a new prometheus gauge with a label
74-
pub fn register_gauge_with_label(&mut self, name: &str, help: &str, label: &str, value: i64) {
75-
let opts = prometheus::Opts::new(name, help).const_label("other_node", label);
80+
pub fn register_gauge_with_label(&mut self, name: &str, help: &str, label: &str, label_value: &str, value: i64) {
81+
let opts = prometheus::Opts::new(name, help).const_label(label, label_value);
7682
// add labels here .
7783
//opts.variable_labels.push(label.to_string());
7884

0 commit comments

Comments
 (0)