diff --git a/src/web/metrics.rs b/src/web/metrics.rs index ac4e17a44..65bd19c68 100644 --- a/src/web/metrics.rs +++ b/src/web/metrics.rs @@ -124,9 +124,12 @@ pub fn metrics_handler(req: &mut Request) -> IronResult { .get(0), ); PRIORITIZED_CRATES_COUNT.set( - ctry!(conn.query("SELECT COUNT(*) FROM queue WHERE priority >= 0;", &[])) - .get(0) - .get(0), + ctry!(conn.query( + "SELECT COUNT(*) FROM queue WHERE attempt < 5 AND priority <= 0;", + &[] + )) + .get(0) + .get(0), ); FAILED_CRATES_COUNT.set( ctry!(conn.query("SELECT COUNT(*) FROM queue WHERE attempt >= 5;", &[])) @@ -196,7 +199,7 @@ impl iron::Handler for RequestRecorder { #[cfg(test)] mod tests { - use crate::test::wrapper; + use crate::test::{assert_success, wrapper}; use std::{ collections::HashMap, sync::{ @@ -358,4 +361,12 @@ mod tests { Ok(()) }) } + + #[test] + fn metrics() { + wrapper(|env| { + let web = env.frontend(); + assert_success("/about/metrics", web) + }) + } }