@@ -5,28 +5,14 @@ pub mod error;
55mod node;
66mod ping;
77
8- use crate :: {
9- auth:: { K8STokenAuthorizor , K8STokenReviewer , TokenAuthMiddleware } ,
10- constants:: {
11- CRD_CONVERT_ENDPOINT , EXCLUDE_NODE_FROM_LB_ENDPOINT , HEADER_BRUPOP_K8S_AUTH_TOKEN ,
12- HEADER_BRUPOP_NODE_NAME , HEADER_BRUPOP_NODE_UID , NODE_CORDON_AND_DRAIN_ENDPOINT ,
13- NODE_RESOURCE_ENDPOINT , NODE_UNCORDON_ENDPOINT , REMOVE_NODE_EXCLUSION_TO_LB_ENDPOINT ,
14- } ,
15- telemetry,
16- } ;
17- use models:: constants:: {
18- AGENT , APISERVER_HEALTH_CHECK_ROUTE , APISERVER_SERVICE_NAME , LABEL_COMPONENT , PRIVATE_KEY_NAME ,
19- PUBLIC_KEY_NAME , TLS_KEY_MOUNT_PATH ,
20- } ;
21- use models:: node:: { read_certificate, BottlerocketShadowClient , BottlerocketShadowSelector } ;
8+ use std:: { env, fs:: File , io:: BufReader } ;
229
2310use actix_web:: {
2411 dev:: ServerHandle ,
2512 http:: header:: HeaderMap ,
2613 web:: { self , Data } ,
2714 App , HttpServer ,
2815} ;
29- use actix_web_opentelemetry:: { PrometheusMetricsHandler , RequestMetrics , RequestTracing } ;
3016use futures:: StreamExt ;
3117use k8s_openapi:: api:: core:: v1:: Pod ;
3218use kube:: {
@@ -38,11 +24,25 @@ use kube::{
3824 } ,
3925 ResourceExt ,
4026} ;
41-
27+ use opentelemetry_instrumentation_actix_web :: { RequestMetrics , RequestTracing } ;
4228use rustls:: ServerConfig ;
4329use rustls_pemfile:: { certs, pkcs8_private_keys} ;
4430use snafu:: { OptionExt , ResultExt } ;
45- use std:: { env, fs:: File , io:: BufReader } ;
31+
32+ use crate :: {
33+ auth:: { K8STokenAuthorizor , K8STokenReviewer , TokenAuthMiddleware } ,
34+ constants:: {
35+ CRD_CONVERT_ENDPOINT , EXCLUDE_NODE_FROM_LB_ENDPOINT , HEADER_BRUPOP_K8S_AUTH_TOKEN ,
36+ HEADER_BRUPOP_NODE_NAME , HEADER_BRUPOP_NODE_UID , NODE_CORDON_AND_DRAIN_ENDPOINT ,
37+ NODE_RESOURCE_ENDPOINT , NODE_UNCORDON_ENDPOINT , REMOVE_NODE_EXCLUSION_TO_LB_ENDPOINT ,
38+ } ,
39+ telemetry,
40+ } ;
41+ use models:: constants:: {
42+ AGENT , APISERVER_HEALTH_CHECK_ROUTE , APISERVER_SERVICE_NAME , LABEL_COMPONENT , PRIVATE_KEY_NAME ,
43+ PUBLIC_KEY_NAME , TLS_KEY_MOUNT_PATH ,
44+ } ;
45+ use models:: node:: { read_certificate, BottlerocketShadowClient , BottlerocketShadowSelector } ;
4646use tokio:: time:: { sleep, Duration } ;
4747use tracing:: { event, Level } ;
4848use tracing_actix_web:: TracingLogger ;
@@ -217,12 +217,10 @@ pub async fn run_server<T: 'static + BottlerocketShadowClient>(
217217 )
218218 . wrap ( RequestTracing :: new ( ) )
219219 . wrap ( RequestMetrics :: default ( ) )
220- . route (
221- "/metrics" ,
222- web:: get ( ) . to ( PrometheusMetricsHandler :: new ( prometheus_registry. clone ( ) ) ) ,
223- )
220+ . route ( "/metrics" , web:: get ( ) . to ( crate :: telemetry:: vending_metrics) )
224221 . wrap ( TracingLogger :: < telemetry:: BrupopApiserverRootSpanBuilder > :: new ( ) )
225222 . app_data ( Data :: new ( settings. clone ( ) ) )
223+ . app_data ( Data :: new ( prometheus_registry. clone ( ) ) )
226224 . service (
227225 web:: resource ( NODE_RESOURCE_ENDPOINT )
228226 . route ( web:: post ( ) . to ( node:: create_bottlerocket_shadow_resource :: < T > ) )
0 commit comments