v1_logs_pipelines_CreateLogsPipeline_3314493032/
v1_logs-pipelines_CreateLogsPipeline_3314493032.rs1use datadog_api_client::datadog;
4use datadog_api_client::datadogV1::api_logs_pipelines::LogsPipelinesAPI;
5use datadog_api_client::datadogV1::model::LogsArrayProcessor;
6use datadog_api_client::datadogV1::model::LogsArrayProcessorOperation;
7use datadog_api_client::datadogV1::model::LogsArrayProcessorOperationAppend;
8use datadog_api_client::datadogV1::model::LogsArrayProcessorOperationAppendType;
9use datadog_api_client::datadogV1::model::LogsArrayProcessorType;
10use datadog_api_client::datadogV1::model::LogsFilter;
11use datadog_api_client::datadogV1::model::LogsPipeline;
12use datadog_api_client::datadogV1::model::LogsProcessor;
13
14#[tokio::main]
15async fn main() {
16 let body = LogsPipeline::new("testPipelineArrayAppendPreserve".to_string())
17 .filter(LogsFilter::new().query("source:python".to_string()))
18 .processors(vec![LogsProcessor::LogsArrayProcessor(Box::new(
19 LogsArrayProcessor::new(
20 LogsArrayProcessorOperation::LogsArrayProcessorOperationAppend(Box::new(
21 LogsArrayProcessorOperationAppend::new(
22 "network.client.ip".to_string(),
23 "sourceIps".to_string(),
24 LogsArrayProcessorOperationAppendType::APPEND,
25 )
26 .preserve_source(true),
27 )),
28 LogsArrayProcessorType::ARRAY_PROCESSOR,
29 )
30 .is_enabled(true)
31 .name("append_ip_and_keep_source".to_string()),
32 ))])
33 .tags(vec![]);
34 let configuration = datadog::Configuration::new();
35 let api = LogsPipelinesAPI::with_config(configuration);
36 let resp = api.create_logs_pipeline(body).await;
37 if let Ok(value) = resp {
38 println!("{:#?}", value);
39 } else {
40 println!("{:#?}", resp.unwrap_err());
41 }
42}