v2_metrics_SubmitMetrics_1762007427/
v2_metrics_SubmitMetrics_1762007427.rs

1// Submit metrics with compression returns "Payload accepted" response
2use datadog_api_client::datadog;
3use datadog_api_client::datadogV2::api_metrics::MetricsAPI;
4use datadog_api_client::datadogV2::api_metrics::SubmitMetricsOptionalParams;
5use datadog_api_client::datadogV2::model::MetricContentEncoding;
6use datadog_api_client::datadogV2::model::MetricIntakeType;
7use datadog_api_client::datadogV2::model::MetricPayload;
8use datadog_api_client::datadogV2::model::MetricPoint;
9use datadog_api_client::datadogV2::model::MetricSeries;
10
11#[tokio::main]
12async fn main() {
13    let body = MetricPayload::new(vec![MetricSeries::new(
14        "system.load.1".to_string(),
15        vec![MetricPoint::new().timestamp(1636629071).value(0.7 as f64)],
16    )
17    .type_(MetricIntakeType::UNSPECIFIED)]);
18    let configuration = datadog::Configuration::new();
19    let api = MetricsAPI::with_config(configuration);
20    let resp = api
21        .submit_metrics(
22            body,
23            SubmitMetricsOptionalParams::default().content_encoding(MetricContentEncoding::ZSTD1),
24        )
25        .await;
26    if let Ok(value) = resp {
27        println!("{:#?}", value);
28    } else {
29        println!("{:#?}", resp.unwrap_err());
30    }
31}