From e7aeb78192a7a8fda618f74cdc17a61095f17840 Mon Sep 17 00:00:00 2001 From: prplV Date: Mon, 3 Mar 2025 13:50:08 +0300 Subject: [PATCH] refactor + Cow usage --- src/endpoints.rs | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/endpoints.rs b/src/endpoints.rs index fad43eb..7dce194 100644 --- a/src/endpoints.rs +++ b/src/endpoints.rs @@ -7,23 +7,18 @@ use crate::structs::v3::PrometheusMetrics; use prometheus::{ Encoder, Gauge, Registry, TextEncoder}; use std::sync::{ Arc, MutexGuard }; use crate::AppState; -use tracing::{ error, debug, info, warn }; +use tracing::{ error, info, warn }; use crate::metrics::{MetricsProcesser, MetricsValueType}; pub async fn update_metrics( State(state): State>, - Json(request) : Json + Json(request) : Json> ) -> impl IntoResponse { info!("post on /update"); -// let resp = Response::new("body"); - // debug!("{:?}", request); - // debug!("{:?}", MetricsProcesser::get_type_of_value(&request)); let service = &request.service_name; let endpoint = &request.endpoint_name; for i in request.metrics { - // debug!("{:?}", &i); - // debug!("{:?}", MetricsProcesser::get_type_of_value(&i)); let metric_name = format!("{}_{}_{}", service, endpoint, &i.id); match MetricsProcesser::get_type_of_value(&i) { MetricsValueType::Array | @@ -33,7 +28,8 @@ pub async fn update_metrics( MetricsValueType::Number => { let gauge = MetricsProcesser::gauge_from_number( &i, - &metric_name + &metric_name, + i.clone().desc.unwrap_or_else(|| std::borrow::Cow::Borrowed(&i.id)).into_owned() ); if let Some(gauge) = gauge { match state.registry.lock() { @@ -50,7 +46,6 @@ pub async fn update_metrics( }, } } - // dbg!(gauge); }, MetricsValueType::ArrayOfStrings => { warn!("String arrays are unsupported, ignoring ...");