AirLibrary/Client/AirServiceProvider/GetMetrics.rs
1//! `AirServiceProvider::GetMetrics` - retrieve daemon-side metrics by
2//! optional type filter. Wraps
3//! [`crate::Client::AirClient::AirClient::GetMetrics`].
4
5use crate::{
6 AirError,
7 Client::{AirClient::AirMetrics, AirServiceProvider::AirServiceProvider},
8 dev_log,
9};
10
11impl AirServiceProvider {
12 /// Fetches daemon metrics. `metric_type` of `None` returns all
13 /// counters; common values are `"performance"`, `"resources"`,
14 /// `"requests"`.
15 pub async fn GetMetrics(&self, metric_type:Option<String>) -> Result<AirMetrics::Struct, AirError> {
16 let RequestID = crate::Utility::GenerateRequestId();
17
18 dev_log!("grpc", "[AirServiceProvider] GetMetrics (request_id: {})", RequestID);
19
20 self.client.GetMetrics(RequestID, metric_type).await
21 }
22}