From 072b244575913458485c4bb831c1991bbf7b5c4a Mon Sep 17 00:00:00 2001 From: sakridge Date: Mon, 17 Sep 2018 11:07:04 -0700 Subject: [PATCH] Add perf counters for record/write stages (#1240) --- src/record_stage.rs | 9 +++++++++ src/write_stage.rs | 2 ++ 2 files changed, 11 insertions(+) diff --git a/src/record_stage.rs b/src/record_stage.rs index 6ac362ed45..ab0dca8d1a 100644 --- a/src/record_stage.rs +++ b/src/record_stage.rs @@ -5,10 +5,13 @@ //! Transaction, the latest hash, and the number of hashes since the last transaction. //! The resulting stream of entries represents ordered transactions in time. +use counter::Counter; use entry::Entry; use hash::Hash; +use log::Level; use recorder::Recorder; use service::Service; +use std::sync::atomic::AtomicUsize; use std::sync::mpsc::{channel, Receiver, RecvError, Sender, TryRecvError}; use std::thread::{self, Builder, JoinHandle}; use std::time::{Duration, Instant}; @@ -86,8 +89,14 @@ impl RecordStage { } else { vec![] }; + let txs_len = txs.len(); let entries = recorder.record(txs); + let entries_len = entries.len(); sender.send(entries).or(Err(()))?; + + inc_new_counter_info!("record_stage-txs", txs_len); + inc_new_counter_info!("record_stage-entries", entries_len); + Ok(()) } diff --git a/src/write_stage.rs b/src/write_stage.rs index 6826989954..f5af5a9f4e 100644 --- a/src/write_stage.rs +++ b/src/write_stage.rs @@ -49,6 +49,8 @@ impl WriteStage { } } + inc_new_counter_info!("write_stage-write_entries", entries.len()); + //TODO(anatoly): real stake based voting needs to change this //leader simply votes if the current set of validators have voted //on a valid last id