v2_logs_archives_UpdateLogsArchive/
v2_logs-archives_UpdateLogsArchive.rs

1// Update an archive returns "OK" response
2use datadog_api_client::datadog;
3use datadog_api_client::datadogV2::api_logs_archives::LogsArchivesAPI;
4use datadog_api_client::datadogV2::model::LogsArchiveCreateRequest;
5use datadog_api_client::datadogV2::model::LogsArchiveCreateRequestAttributes;
6use datadog_api_client::datadogV2::model::LogsArchiveCreateRequestDefinition;
7use datadog_api_client::datadogV2::model::LogsArchiveCreateRequestDestination;
8use datadog_api_client::datadogV2::model::LogsArchiveDestinationAzure;
9use datadog_api_client::datadogV2::model::LogsArchiveDestinationAzureType;
10use datadog_api_client::datadogV2::model::LogsArchiveIntegrationAzure;
11
12#[tokio::main]
13async fn main() {
14    let body = LogsArchiveCreateRequest::new().data(
15        LogsArchiveCreateRequestDefinition::new("archives".to_string()).attributes(
16            LogsArchiveCreateRequestAttributes::new(
17                LogsArchiveCreateRequestDestination::LogsArchiveDestinationAzure(Box::new(
18                    LogsArchiveDestinationAzure::new(
19                        "container-name".to_string(),
20                        LogsArchiveIntegrationAzure::new(
21                            "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa".to_string(),
22                            "aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa".to_string(),
23                        ),
24                        "account-name".to_string(),
25                        LogsArchiveDestinationAzureType::AZURE,
26                    ),
27                )),
28                "Nginx Archive".to_string(),
29                "source:nginx".to_string(),
30            )
31            .include_tags(false)
32            .rehydration_max_scan_size_in_gb(Some(100))
33            .rehydration_tags(vec!["team:intake".to_string(), "team:app".to_string()]),
34        ),
35    );
36    let configuration = datadog::Configuration::new();
37    let api = LogsArchivesAPI::with_config(configuration);
38    let resp = api
39        .update_logs_archive("archive_id".to_string(), body)
40        .await;
41    if let Ok(value) = resp {
42        println!("{:#?}", value);
43    } else {
44        println!("{:#?}", resp.unwrap_err());
45    }
46}