@@ -137,6 +137,7 @@ async fn main() -> Result<()> {
137137 }
138138
139139 let pccs_url = config. pccs_url . clone ( ) ;
140+ let metrics_enabled = config. metrics . enabled ;
140141 let state = main_service:: KmsState :: new ( config) . context ( "Failed to initialize KMS state" ) ?;
141142 let figment = figment
142143 . clone ( )
@@ -147,17 +148,22 @@ async fn main() -> Result<()> {
147148 res. set_raw_header ( "X-App-Version" , app_version ( ) ) ;
148149 } )
149150 } ) )
150- . attach ( AdHoc :: on_response (
151- "Record KMS attestation metrics" ,
152- |req, res| Box :: pin ( async move { record_attestation_metrics ( req, res) } ) ,
153- ) )
154151 . mount (
155152 "/prpc" ,
156153 ra_rpc:: prpc_routes!( KmsState , RpcHandler , trim: "KMS." ) ,
157154 )
158- . mount ( "/" , rocket:: routes![ metrics] )
159155 . manage ( state) ;
160156
157+ if metrics_enabled {
158+ info ! ( "Prometheus metrics endpoint enabled at /metrics" ) ;
159+ rocket = rocket
160+ . attach ( AdHoc :: on_response (
161+ "Record KMS attestation metrics" ,
162+ |req, res| Box :: pin ( async move { record_attestation_metrics ( req, res) } ) ,
163+ ) )
164+ . mount ( "/" , rocket:: routes![ metrics] ) ;
165+ }
166+
161167 let verifier = QuoteVerifier :: new ( pccs_url) ;
162168 rocket = rocket. manage ( verifier) ;
163169
0 commit comments