Add more eth1 metrics (#728)

* Add metrics for junk eth1 votes

* Add eth1 cache metrics
This commit is contained in:
Paul Hauner
2019-12-17 10:20:27 +11:00
committed by GitHub
parent 61be1491a1
commit 34f003adb8
7 changed files with 61 additions and 0 deletions

View File

@@ -1,8 +1,12 @@
#[macro_use]
extern crate lazy_static;
mod block_cache;
mod deposit_cache;
mod deposit_log;
pub mod http;
mod inner;
mod metrics;
mod service;
pub use block_cache::{BlockCache, Eth1Block};

View File

@@ -0,0 +1,19 @@
pub use lighthouse_metrics::*;
lazy_static! {
/*
* Eth1 blocks
*/
pub static ref BLOCK_CACHE_LEN: Result<IntGauge> =
try_create_int_gauge("eth1_block_cache_len", "Count of eth1 blocks in cache");
pub static ref LATEST_CACHED_BLOCK_TIMESTAMP: Result<IntGauge> =
try_create_int_gauge("eth1_latest_cached_block_timestamp", "Timestamp of latest block in eth1 cache");
/*
* Eth1 deposits
*/
pub static ref DEPOSIT_CACHE_LEN: Result<IntGauge> =
try_create_int_gauge("eth1_deposit_cache_len", "Number of deposits in the eth1 cache");
pub static ref HIGHEST_PROCESSED_DEPOSIT_BLOCK: Result<IntGauge> =
try_create_int_gauge("eth1_highest_processed_deposit_block", "Number of the last block checked for deposits");
}

View File

@@ -1,3 +1,4 @@
use crate::metrics;
use crate::{
block_cache::{BlockCache, Error as BlockCacheError, Eth1Block},
deposit_cache::Error as DepositCacheError,
@@ -461,6 +462,12 @@ impl Service {
cache.last_processed_block = Some(block_range.end.saturating_sub(1));
metrics::set_gauge(&metrics::DEPOSIT_CACHE_LEN, cache.cache.len() as i64);
metrics::set_gauge(
&metrics::HIGHEST_PROCESSED_DEPOSIT_BLOCK,
cache.last_processed_block.unwrap_or_else(|| 0) as i64,
);
Ok(sum)
})
.map(|logs_imported| DepositCacheUpdateOutcome::Success { logs_imported })
@@ -559,6 +566,19 @@ impl Service {
.insert_root_or_child(eth1_block)
.map_err(Error::FailedToInsertEth1Block)?;
metrics::set_gauge(
&metrics::BLOCK_CACHE_LEN,
cache_3.block_cache.read().len() as i64,
);
metrics::set_gauge(
&metrics::LATEST_CACHED_BLOCK_TIMESTAMP,
cache_3
.block_cache
.read()
.latest_block_timestamp()
.unwrap_or_else(|| 0) as i64,
);
Ok(sum + 1)
})
})
@@ -566,6 +586,11 @@ impl Service {
// Prune the block cache, preventing it from growing too large.
cache_4.prune_blocks();
metrics::set_gauge(
&metrics::BLOCK_CACHE_LEN,
cache_4.block_cache.read().len() as i64,
);
Ok(BlockCacheUpdateOutcome::Success {
blocks_imported,
head_block_number: cache_4.clone().block_cache.read().highest_block_number(),