v2_logs_metrics_UpdateLogsMetric/
v2_logs-metrics_UpdateLogsMetric.rs1use datadog_api_client::datadog;
3use datadog_api_client::datadogV2::api_logs_metrics::LogsMetricsAPI;
4use datadog_api_client::datadogV2::model::LogsMetricFilter;
5use datadog_api_client::datadogV2::model::LogsMetricType;
6use datadog_api_client::datadogV2::model::LogsMetricUpdateAttributes;
7use datadog_api_client::datadogV2::model::LogsMetricUpdateData;
8use datadog_api_client::datadogV2::model::LogsMetricUpdateRequest;
9
10#[tokio::main]
11async fn main() {
12 let logs_metric_data_id = std::env::var("LOGS_METRIC_DATA_ID").unwrap();
14 let body = LogsMetricUpdateRequest::new(LogsMetricUpdateData::new(
15 LogsMetricUpdateAttributes::new().filter(
16 LogsMetricFilter::new()
17 .query("service:web* AND @http.status_code:[200 TO 299]-updated".to_string()),
18 ),
19 LogsMetricType::LOGS_METRICS,
20 ));
21 let configuration = datadog::Configuration::new();
22 let api = LogsMetricsAPI::with_config(configuration);
23 let resp = api
24 .update_logs_metric(logs_metric_data_id.clone(), body)
25 .await;
26 if let Ok(value) = resp {
27 println!("{:#?}", value);
28 } else {
29 println!("{:#?}", resp.unwrap_err());
30 }
31}