mirror of
https://github.com/mimblewimble/grin.git
synced 2025-02-01 08:51:08 +03:00
TUI mining server status: add blocks found statistics (#2151)
* TUI mining server status: add solutions found statistics * rustfmt * modify 'solutions found' as 'blocks found'
This commit is contained in:
parent
8e678058f1
commit
197d4f9575
3 changed files with 27 additions and 13 deletions
|
@ -80,6 +80,8 @@ pub struct WorkerStats {
|
|||
pub num_rejected: u64,
|
||||
/// number of shares submitted too late
|
||||
pub num_stale: u64,
|
||||
/// number of valid blocks found
|
||||
pub num_blocks_found: u64,
|
||||
}
|
||||
|
||||
/// Struct to return relevant information about the stratum server
|
||||
|
@ -209,6 +211,7 @@ impl Default for WorkerStats {
|
|||
num_accepted: 0,
|
||||
num_rejected: 0,
|
||||
num_stale: 0,
|
||||
num_blocks_found: 0,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -512,10 +512,14 @@ impl StratumServer {
|
|||
return Err(serde_json::to_value(e).unwrap());
|
||||
}
|
||||
share_is_block = true;
|
||||
worker_stats.num_blocks_found += 1;
|
||||
// Log message to make it obvious we found a block
|
||||
warn!(
|
||||
"(Server ID: {}) Solution Found for block {} - Yay!!!",
|
||||
self.id, params.height
|
||||
"(Server ID: {}) Solution Found for block {} - Yay!!! Worker ID: {}, blocks found: {}, shares: {}",
|
||||
self.id, params.height,
|
||||
worker_stats.id,
|
||||
worker_stats.num_blocks_found,
|
||||
worker_stats.num_accepted,
|
||||
);
|
||||
} else {
|
||||
// Do some validation but dont submit
|
||||
|
|
|
@ -44,6 +44,7 @@ enum StratumWorkerColumn {
|
|||
NumAccepted,
|
||||
NumRejected,
|
||||
NumStale,
|
||||
NumBlocksFound,
|
||||
}
|
||||
|
||||
impl StratumWorkerColumn {
|
||||
|
@ -56,6 +57,7 @@ impl StratumWorkerColumn {
|
|||
StratumWorkerColumn::NumAccepted => "Num Accepted",
|
||||
StratumWorkerColumn::NumRejected => "Num Rejected",
|
||||
StratumWorkerColumn::NumStale => "Num Stale",
|
||||
StratumWorkerColumn::NumBlocksFound => "Blocks Found",
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -79,6 +81,7 @@ impl TableViewItem<StratumWorkerColumn> for WorkerStats {
|
|||
StratumWorkerColumn::NumAccepted => self.num_accepted.to_string(),
|
||||
StratumWorkerColumn::NumRejected => self.num_rejected.to_string(),
|
||||
StratumWorkerColumn::NumStale => self.num_stale.to_string(),
|
||||
StratumWorkerColumn::NumBlocksFound => self.num_blocks_found.to_string(),
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -94,6 +97,7 @@ impl TableViewItem<StratumWorkerColumn> for WorkerStats {
|
|||
StratumWorkerColumn::NumAccepted => Ordering::Equal,
|
||||
StratumWorkerColumn::NumRejected => Ordering::Equal,
|
||||
StratumWorkerColumn::NumStale => Ordering::Equal,
|
||||
StratumWorkerColumn::NumBlocksFound => Ordering::Equal,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -185,17 +189,15 @@ impl TUIStatusListener for TUIMiningView {
|
|||
});
|
||||
|
||||
let table_view = TableView::<WorkerStats, StratumWorkerColumn>::new()
|
||||
.column(StratumWorkerColumn::Id, "Worker ID", |c| {
|
||||
c.width_percent(10)
|
||||
})
|
||||
.column(StratumWorkerColumn::Id, "Worker ID", |c| c.width_percent(8))
|
||||
.column(StratumWorkerColumn::IsConnected, "Connected", |c| {
|
||||
c.width_percent(10)
|
||||
c.width_percent(8)
|
||||
})
|
||||
.column(StratumWorkerColumn::LastSeen, "Last Seen", |c| {
|
||||
c.width_percent(16)
|
||||
})
|
||||
.column(StratumWorkerColumn::PowDifficulty, "Pow Difficulty", |c| {
|
||||
c.width_percent(14)
|
||||
c.width_percent(12)
|
||||
})
|
||||
.column(StratumWorkerColumn::NumAccepted, "Num Accepted", |c| {
|
||||
c.width_percent(10)
|
||||
|
@ -205,6 +207,9 @@ impl TUIStatusListener for TUIMiningView {
|
|||
})
|
||||
.column(StratumWorkerColumn::NumStale, "Num Stale", |c| {
|
||||
c.width_percent(10)
|
||||
})
|
||||
.column(StratumWorkerColumn::NumBlocksFound, "Blocks Found", |c| {
|
||||
c.width_percent(10)
|
||||
});
|
||||
|
||||
let status_view = LinearLayout::new(Orientation::Vertical)
|
||||
|
@ -330,18 +335,20 @@ impl TUIStatusListener for TUIMiningView {
|
|||
);
|
||||
let stratum_stats = stats.stratum_stats.clone();
|
||||
let stratum_network_hashrate = format!(
|
||||
"Network Hashrate: {:.*}",
|
||||
"Network Hashrate: {:.*}",
|
||||
2,
|
||||
stratum_stats.network_hashrate(stratum_stats.block_height)
|
||||
);
|
||||
let worker_stats = stratum_stats.worker_stats;
|
||||
let stratum_enabled = format!("Mining server enabled: {}", stratum_stats.is_enabled);
|
||||
let stratum_is_running = format!("Mining server running: {}", stratum_stats.is_running);
|
||||
let stratum_num_workers = format!("Number of workers: {}", stratum_stats.num_workers);
|
||||
let stratum_block_height = format!("Solving Block Height: {}", stratum_stats.block_height);
|
||||
let stratum_network_difficulty =
|
||||
format!("Network Difficulty: {}", stratum_stats.network_difficulty);
|
||||
let stratum_edge_bits = format!("Cuckoo Size: {}", stratum_stats.edge_bits);
|
||||
let stratum_num_workers = format!("Number of workers: {}", stratum_stats.num_workers);
|
||||
let stratum_block_height = format!("Solving Block Height: {}", stratum_stats.block_height);
|
||||
let stratum_network_difficulty = format!(
|
||||
"Network Difficulty: {}",
|
||||
stratum_stats.network_difficulty
|
||||
);
|
||||
let stratum_edge_bits = format!("Cuckoo Size: {}", stratum_stats.edge_bits);
|
||||
|
||||
c.call_on_id("stratum_config_status", |t: &mut TextView| {
|
||||
t.set_content(stratum_enabled);
|
||||
|
|
Loading…
Reference in a new issue