v2_logs_SubmitLog/
v2_logs_SubmitLog.rs

1// Send logs returns "Request accepted for processing (always 202 empty JSON)."
2// response
3use datadog_api_client::datadog;
4use datadog_api_client::datadogV2::api_logs::LogsAPI;
5use datadog_api_client::datadogV2::api_logs::SubmitLogOptionalParams;
6use datadog_api_client::datadogV2::model::HTTPLogItem;
7use serde_json::Value;
8use std::collections::BTreeMap;
9
10#[tokio::main]
11async fn main() {
12    let body = vec![HTTPLogItem::new(
13        "2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World".to_string(),
14    )
15    .ddsource("nginx".to_string())
16    .ddtags("env:staging,version:5.1".to_string())
17    .hostname("i-012345678".to_string())
18    .service("payment".to_string())
19    .additional_properties(BTreeMap::from([(
20        "status".to_string(),
21        Value::from("info"),
22    )]))];
23    let configuration = datadog::Configuration::new();
24    let api = LogsAPI::with_config(configuration);
25    let resp = api
26        .submit_log(body, SubmitLogOptionalParams::default())
27        .await;
28    if let Ok(value) = resp {
29        println!("{:#?}", value);
30    } else {
31        println!("{:#?}", resp.unwrap_err());
32    }
33}