mirror of
https://github.com/pezkuwichain/pezkuwi-telemetry.git
synced 2026-06-11 22:21:09 +00:00
Add per-chain aggregate software/hardware telemetry (#464)
* Add per-chain aggregate software/hardware telemetry * Fix tests' compilation * Add extra comments for the `Counter` struct * Replace the boolean argument with an enum * Rename `replace_hwbench` to `update_hwbench` * Move `Counter` into a separate file * Move `ChainStatsCollator` to `chain_stats.rs` * Fix incorrect key on the unknown table * Improve types for the stats component; get rid of `any`
This commit is contained in:
@@ -17,7 +17,8 @@
|
||||
use crate::find_location;
|
||||
use common::node_message::SystemInterval;
|
||||
use common::node_types::{
|
||||
Block, BlockDetails, NodeDetails, NodeHardware, NodeIO, NodeLocation, NodeStats, Timestamp,
|
||||
Block, BlockDetails, NodeDetails, NodeHardware, NodeHwBench, NodeIO, NodeLocation, NodeStats,
|
||||
Timestamp,
|
||||
};
|
||||
use common::time;
|
||||
|
||||
@@ -47,6 +48,8 @@ pub struct Node {
|
||||
stale: bool,
|
||||
/// Unix timestamp for when node started up (falls back to connection time)
|
||||
startup_time: Option<Timestamp>,
|
||||
/// Hardware benchmark results for the node
|
||||
hwbench: Option<NodeHwBench>,
|
||||
}
|
||||
|
||||
impl Node {
|
||||
@@ -67,6 +70,7 @@ impl Node {
|
||||
location: None,
|
||||
stale: false,
|
||||
startup_time,
|
||||
hwbench: None,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -110,6 +114,14 @@ impl Node {
|
||||
&self.best
|
||||
}
|
||||
|
||||
pub fn hwbench(&self) -> Option<&NodeHwBench> {
|
||||
self.hwbench.as_ref()
|
||||
}
|
||||
|
||||
pub fn update_hwbench(&mut self, hwbench: NodeHwBench) -> Option<NodeHwBench> {
|
||||
self.hwbench.replace(hwbench)
|
||||
}
|
||||
|
||||
pub fn update_block(&mut self, block: Block) -> bool {
|
||||
if block.height > self.best.block.height {
|
||||
self.stale = false;
|
||||
|
||||
Reference in New Issue
Block a user