Log fork stake-percentage in metrics, and display (#5406)

* Log fork stake percentage data

* Add fork stake percentage to dashboard

* Call out parent slot
This commit is contained in:
Tyera Eulberg
2019-08-02 19:16:23 -06:00
committed by GitHub
parent ccc0f2d956
commit 92e419f1c7
2 changed files with 221 additions and 0 deletions

View File

@@ -474,6 +474,37 @@ impl ReplayStage {
total_epoch_stakes,
stake_lockout.lockout(),
);
let percentage_stake: f64 =
stake_lockout.stake() as f64 / total_epoch_stakes as f64;
let fork_metrics = *fork as i64;
let parent = w_bank_forks
.get(*fork)
.map(|bank| bank.parent().map(|parent| parent.slot()).unwrap_or(0))
.unwrap_or(0) as i64;
solana_metrics::submit(
solana_metrics::influxdb::Point::new("stake-percentage")
.add_tag(
"fork_tag",
solana_metrics::influxdb::Value::Integer(fork_metrics),
)
.add_field(
"percentage_stake",
solana_metrics::influxdb::Value::Float(percentage_stake),
)
.add_field(
"fork",
solana_metrics::influxdb::Value::Integer(fork_metrics),
)
.add_field("parent", solana_metrics::influxdb::Value::Integer(parent))
.add_field(
"root",
solana_metrics::influxdb::Value::Integer(
tower.root().unwrap_or(0) as i64
),
)
.to_owned(),
log::Level::Info,
);
}
}
drop(w_bank_forks);