v2_rum_metrics_UpdateRumMetric/
v2_rum-metrics_UpdateRumMetric.rs1use datadog_api_client::datadog;
3use datadog_api_client::datadogV2::api_rum_metrics::RumMetricsAPI;
4use datadog_api_client::datadogV2::model::RumMetricFilter;
5use datadog_api_client::datadogV2::model::RumMetricGroupBy;
6use datadog_api_client::datadogV2::model::RumMetricType;
7use datadog_api_client::datadogV2::model::RumMetricUpdateAttributes;
8use datadog_api_client::datadogV2::model::RumMetricUpdateCompute;
9use datadog_api_client::datadogV2::model::RumMetricUpdateData;
10use datadog_api_client::datadogV2::model::RumMetricUpdateRequest;
11
12#[tokio::main]
13async fn main() {
14 let rum_metric_data_id = std::env::var("RUM_METRIC_DATA_ID").unwrap();
16 let body = RumMetricUpdateRequest::new(
17 RumMetricUpdateData::new(
18 RumMetricUpdateAttributes::new()
19 .compute(RumMetricUpdateCompute::new().include_percentiles(false))
20 .filter(RumMetricFilter::new("@service:rum-config".to_string()))
21 .group_by(vec![RumMetricGroupBy::new("@browser.version".to_string())
22 .tag_name("browser_version".to_string())]),
23 RumMetricType::RUM_METRICS,
24 )
25 .id(rum_metric_data_id.clone()),
26 );
27 let configuration = datadog::Configuration::new();
28 let api = RumMetricsAPI::with_config(configuration);
29 let resp = api
30 .update_rum_metric(rum_metric_data_id.clone(), body)
31 .await;
32 if let Ok(value) = resp {
33 println!("{:#?}", value);
34 } else {
35 println!("{:#?}", resp.unwrap_err());
36 }
37}