pub struct LogsCustomDestinationsAPI { /* private fields */ }
Expand description
Custom Destinations forward all the logs ingested to an external destination.
Note: Log forwarding is not available for the Government (US1-FED) site. Contact your account representative for more information.
See the Custom Destinations Page for a list of the custom destinations currently configured in web UI.
Implementations§
Source§impl LogsCustomDestinationsAPI
impl LogsCustomDestinationsAPI
pub fn new() -> Self
Sourcepub fn with_config(config: Configuration) -> Self
pub fn with_config(config: Configuration) -> Self
Examples found in repository?
More examples
6async fn main() {
7 // there is a valid "custom_destination" in the system
8 let custom_destination_data_id = std::env::var("CUSTOM_DESTINATION_DATA_ID").unwrap();
9 let configuration = datadog::Configuration::new();
10 let api = LogsCustomDestinationsAPI::with_config(configuration);
11 let resp = api
12 .get_logs_custom_destination(custom_destination_data_id.clone())
13 .await;
14 if let Ok(value) = resp {
15 println!("{:#?}", value);
16 } else {
17 println!("{:#?}", resp.unwrap_err());
18 }
19}
6async fn main() {
7 // there is a valid "custom_destination" in the system
8 let custom_destination_data_id = std::env::var("CUSTOM_DESTINATION_DATA_ID").unwrap();
9 let configuration = datadog::Configuration::new();
10 let api = LogsCustomDestinationsAPI::with_config(configuration);
11 let resp = api
12 .delete_logs_custom_destination(custom_destination_data_id.clone())
13 .await;
14 if let Ok(value) = resp {
15 println!("{:#?}", value);
16 } else {
17 println!("{:#?}", resp.unwrap_err());
18 }
19}
11async fn main() {
12 // there is a valid "custom_destination" in the system
13 let custom_destination_data_id = std::env::var("CUSTOM_DESTINATION_DATA_ID").unwrap();
14 let body = CustomDestinationUpdateRequest::new().data(
15 CustomDestinationUpdateRequestDefinition::new(
16 custom_destination_data_id.clone(),
17 CustomDestinationType::CUSTOM_DESTINATION,
18 )
19 .attributes(
20 CustomDestinationUpdateRequestAttributes::new()
21 .enabled(false)
22 .forward_tags(false)
23 .forward_tags_restriction_list_type(
24 CustomDestinationAttributeTagsRestrictionListType::BLOCK_LIST,
25 )
26 .name("Nginx logs (Updated)".to_string())
27 .query("source:nginx".to_string()),
28 ),
29 );
30 let configuration = datadog::Configuration::new();
31 let api = LogsCustomDestinationsAPI::with_config(configuration);
32 let resp = api
33 .update_logs_custom_destination(custom_destination_data_id.clone(), body)
34 .await;
35 if let Ok(value) = resp {
36 println!("{:#?}", value);
37 } else {
38 println!("{:#?}", resp.unwrap_err());
39 }
40}
14async fn main() {
15 let body =
16 CustomDestinationCreateRequest::new().data(CustomDestinationCreateRequestDefinition::new(
17 CustomDestinationCreateRequestAttributes::new(
18 CustomDestinationForwardDestination::CustomDestinationForwardDestinationSplunk(
19 Box::new(CustomDestinationForwardDestinationSplunk::new(
20 "my-access-token".to_string(),
21 "https://example.com".to_string(),
22 CustomDestinationForwardDestinationSplunkType::SPLUNK_HEC,
23 )),
24 ),
25 "Nginx logs".to_string(),
26 )
27 .enabled(false)
28 .forward_tags(false)
29 .forward_tags_restriction_list(vec!["datacenter".to_string(), "host".to_string()])
30 .forward_tags_restriction_list_type(
31 CustomDestinationAttributeTagsRestrictionListType::ALLOW_LIST,
32 )
33 .query("source:nginx".to_string()),
34 CustomDestinationType::CUSTOM_DESTINATION,
35 ));
36 let configuration = datadog::Configuration::new();
37 let api = LogsCustomDestinationsAPI::with_config(configuration);
38 let resp = api.create_logs_custom_destination(body).await;
39 if let Ok(value) = resp {
40 println!("{:#?}", value);
41 } else {
42 println!("{:#?}", resp.unwrap_err());
43 }
44}
15async fn main() {
16 let body = CustomDestinationCreateRequest::new()
17 .data(CustomDestinationCreateRequestDefinition::new(
18 CustomDestinationCreateRequestAttributes::new(
19 CustomDestinationForwardDestination::CustomDestinationForwardDestinationElasticsearch(
20 Box::new(
21 CustomDestinationForwardDestinationElasticsearch::new(
22 CustomDestinationElasticsearchDestinationAuth::new(
23 "my-password".to_string(),
24 "my-username".to_string(),
25 ),
26 "https://example.com".to_string(),
27 "nginx-logs".to_string(),
28 CustomDestinationForwardDestinationElasticsearchType::ELASTICSEARCH,
29 )
30 .index_rotation("yyyy-MM-dd".to_string()),
31 ),
32 ),
33 "Nginx logs".to_string(),
34 )
35 .enabled(false)
36 .forward_tags(false)
37 .forward_tags_restriction_list(vec!["datacenter".to_string(), "host".to_string()])
38 .forward_tags_restriction_list_type(
39 CustomDestinationAttributeTagsRestrictionListType::ALLOW_LIST,
40 )
41 .query("source:nginx".to_string()),
42 CustomDestinationType::CUSTOM_DESTINATION,
43 ));
44 let configuration = datadog::Configuration::new();
45 let api = LogsCustomDestinationsAPI::with_config(configuration);
46 let resp = api.create_logs_custom_destination(body).await;
47 if let Ok(value) = resp {
48 println!("{:#?}", value);
49 } else {
50 println!("{:#?}", resp.unwrap_err());
51 }
52}
- examples/v2_logs-custom-destinations_CreateLogsCustomDestination.rs
- examples/v2_logs-custom-destinations_CreateLogsCustomDestination_2184123765.rs
- examples/v2_logs-custom-destinations_CreateLogsCustomDestination_1735989579.rs
- examples/v2_logs-custom-destinations_CreateLogsCustomDestination_1091442807.rs
pub fn with_client_and_config( config: Configuration, client: ClientWithMiddleware, ) -> Self
Sourcepub async fn create_logs_custom_destination(
&self,
body: CustomDestinationCreateRequest,
) -> Result<CustomDestinationResponse, Error<CreateLogsCustomDestinationError>>
pub async fn create_logs_custom_destination( &self, body: CustomDestinationCreateRequest, ) -> Result<CustomDestinationResponse, Error<CreateLogsCustomDestinationError>>
Create a custom destination in your organization.
Examples found in repository?
14async fn main() {
15 let body =
16 CustomDestinationCreateRequest::new().data(CustomDestinationCreateRequestDefinition::new(
17 CustomDestinationCreateRequestAttributes::new(
18 CustomDestinationForwardDestination::CustomDestinationForwardDestinationSplunk(
19 Box::new(CustomDestinationForwardDestinationSplunk::new(
20 "my-access-token".to_string(),
21 "https://example.com".to_string(),
22 CustomDestinationForwardDestinationSplunkType::SPLUNK_HEC,
23 )),
24 ),
25 "Nginx logs".to_string(),
26 )
27 .enabled(false)
28 .forward_tags(false)
29 .forward_tags_restriction_list(vec!["datacenter".to_string(), "host".to_string()])
30 .forward_tags_restriction_list_type(
31 CustomDestinationAttributeTagsRestrictionListType::ALLOW_LIST,
32 )
33 .query("source:nginx".to_string()),
34 CustomDestinationType::CUSTOM_DESTINATION,
35 ));
36 let configuration = datadog::Configuration::new();
37 let api = LogsCustomDestinationsAPI::with_config(configuration);
38 let resp = api.create_logs_custom_destination(body).await;
39 if let Ok(value) = resp {
40 println!("{:#?}", value);
41 } else {
42 println!("{:#?}", resp.unwrap_err());
43 }
44}
More examples
15async fn main() {
16 let body = CustomDestinationCreateRequest::new()
17 .data(CustomDestinationCreateRequestDefinition::new(
18 CustomDestinationCreateRequestAttributes::new(
19 CustomDestinationForwardDestination::CustomDestinationForwardDestinationElasticsearch(
20 Box::new(
21 CustomDestinationForwardDestinationElasticsearch::new(
22 CustomDestinationElasticsearchDestinationAuth::new(
23 "my-password".to_string(),
24 "my-username".to_string(),
25 ),
26 "https://example.com".to_string(),
27 "nginx-logs".to_string(),
28 CustomDestinationForwardDestinationElasticsearchType::ELASTICSEARCH,
29 )
30 .index_rotation("yyyy-MM-dd".to_string()),
31 ),
32 ),
33 "Nginx logs".to_string(),
34 )
35 .enabled(false)
36 .forward_tags(false)
37 .forward_tags_restriction_list(vec!["datacenter".to_string(), "host".to_string()])
38 .forward_tags_restriction_list_type(
39 CustomDestinationAttributeTagsRestrictionListType::ALLOW_LIST,
40 )
41 .query("source:nginx".to_string()),
42 CustomDestinationType::CUSTOM_DESTINATION,
43 ));
44 let configuration = datadog::Configuration::new();
45 let api = LogsCustomDestinationsAPI::with_config(configuration);
46 let resp = api.create_logs_custom_destination(body).await;
47 if let Ok(value) = resp {
48 println!("{:#?}", value);
49 } else {
50 println!("{:#?}", resp.unwrap_err());
51 }
52}
17async fn main() {
18 let body = CustomDestinationCreateRequest::new()
19 .data(CustomDestinationCreateRequestDefinition::new(
20 CustomDestinationCreateRequestAttributes::new(
21 CustomDestinationForwardDestination::CustomDestinationForwardDestinationHttp(Box::new(
22 CustomDestinationForwardDestinationHttp::new(
23 CustomDestinationHttpDestinationAuth::CustomDestinationHttpDestinationAuthBasic(
24 Box::new(CustomDestinationHttpDestinationAuthBasic::new(
25 "datadog-custom-destination-password".to_string(),
26 CustomDestinationHttpDestinationAuthBasicType::BASIC,
27 "datadog-custom-destination-username".to_string(),
28 )),
29 ),
30 "https://example.com".to_string(),
31 CustomDestinationForwardDestinationHttpType::HTTP,
32 ),
33 )),
34 "Nginx logs".to_string(),
35 )
36 .enabled(true)
37 .forward_tags(true)
38 .forward_tags_restriction_list(vec!["datacenter".to_string(), "host".to_string()])
39 .forward_tags_restriction_list_type(
40 CustomDestinationAttributeTagsRestrictionListType::ALLOW_LIST,
41 )
42 .query("source:nginx".to_string()),
43 CustomDestinationType::CUSTOM_DESTINATION,
44 ));
45 let configuration = datadog::Configuration::new();
46 let api = LogsCustomDestinationsAPI::with_config(configuration);
47 let resp = api.create_logs_custom_destination(body).await;
48 if let Ok(value) = resp {
49 println!("{:#?}", value);
50 } else {
51 println!("{:#?}", resp.unwrap_err());
52 }
53}
17async fn main() {
18 let body = CustomDestinationCreateRequest::new()
19 .data(CustomDestinationCreateRequestDefinition::new(
20 CustomDestinationCreateRequestAttributes::new(
21 CustomDestinationForwardDestination::CustomDestinationForwardDestinationHttp(Box::new(
22 CustomDestinationForwardDestinationHttp::new(
23 CustomDestinationHttpDestinationAuth::CustomDestinationHttpDestinationAuthBasic(
24 Box::new(CustomDestinationHttpDestinationAuthBasic::new(
25 "datadog-custom-destination-password".to_string(),
26 CustomDestinationHttpDestinationAuthBasicType::BASIC,
27 "datadog-custom-destination-username".to_string(),
28 )),
29 ),
30 "https://example.com".to_string(),
31 CustomDestinationForwardDestinationHttpType::HTTP,
32 ),
33 )),
34 "Nginx logs".to_string(),
35 )
36 .enabled(false)
37 .forward_tags(false)
38 .forward_tags_restriction_list(vec!["datacenter".to_string(), "host".to_string()])
39 .forward_tags_restriction_list_type(
40 CustomDestinationAttributeTagsRestrictionListType::ALLOW_LIST,
41 )
42 .query("source:nginx".to_string()),
43 CustomDestinationType::CUSTOM_DESTINATION,
44 ));
45 let configuration = datadog::Configuration::new();
46 let api = LogsCustomDestinationsAPI::with_config(configuration);
47 let resp = api.create_logs_custom_destination(body).await;
48 if let Ok(value) = resp {
49 println!("{:#?}", value);
50 } else {
51 println!("{:#?}", resp.unwrap_err());
52 }
53}
14async fn main() {
15 let body =
16 CustomDestinationCreateRequest
17 ::new().data(
18 CustomDestinationCreateRequestDefinition::new(
19 CustomDestinationCreateRequestAttributes::new(
20 CustomDestinationForwardDestination::CustomDestinationForwardDestinationMicrosoftSentinel(
21 Box::new(
22 CustomDestinationForwardDestinationMicrosoftSentinel::new(
23 "9a2f4d83-2b5e-429e-a35a-2b3c4182db71".to_string(),
24 "https://my-dce-5kyl.eastus-1.ingest.monitor.azure.com".to_string(),
25 "dcr-000a00a000a00000a000000aa000a0aa".to_string(),
26 "Custom-MyTable".to_string(),
27 "f3c9a8a1-4c2e-4d2e-b911-9f3c28c3c8b2".to_string(),
28 CustomDestinationForwardDestinationMicrosoftSentinelType::MICROSOFT_SENTINEL,
29 ),
30 ),
31 ),
32 "Nginx logs".to_string(),
33 )
34 .enabled(false)
35 .forward_tags(false)
36 .forward_tags_restriction_list(vec!["datacenter".to_string(), "host".to_string()])
37 .forward_tags_restriction_list_type(CustomDestinationAttributeTagsRestrictionListType::ALLOW_LIST)
38 .query("source:nginx".to_string()),
39 CustomDestinationType::CUSTOM_DESTINATION,
40 ),
41 );
42 let configuration = datadog::Configuration::new();
43 let api = LogsCustomDestinationsAPI::with_config(configuration);
44 let resp = api.create_logs_custom_destination(body).await;
45 if let Ok(value) = resp {
46 println!("{:#?}", value);
47 } else {
48 println!("{:#?}", resp.unwrap_err());
49 }
50}
17async fn main() {
18 let body =
19 CustomDestinationCreateRequest
20 ::new().data(
21 CustomDestinationCreateRequestDefinition::new(
22 CustomDestinationCreateRequestAttributes::new(
23 CustomDestinationForwardDestination::CustomDestinationForwardDestinationHttp(
24 Box::new(
25 CustomDestinationForwardDestinationHttp::new(
26 CustomDestinationHttpDestinationAuth::CustomDestinationHttpDestinationAuthCustomHeader(
27 Box::new(
28 CustomDestinationHttpDestinationAuthCustomHeader::new(
29 "MY-AUTHENTICATION-HEADER".to_string(),
30 "my-secret".to_string(),
31 CustomDestinationHttpDestinationAuthCustomHeaderType::CUSTOM_HEADER,
32 ),
33 ),
34 ),
35 "https://example.com".to_string(),
36 CustomDestinationForwardDestinationHttpType::HTTP,
37 ),
38 ),
39 ),
40 "Nginx logs".to_string(),
41 )
42 .enabled(false)
43 .forward_tags(false)
44 .forward_tags_restriction_list(vec!["datacenter".to_string(), "host".to_string()])
45 .forward_tags_restriction_list_type(CustomDestinationAttributeTagsRestrictionListType::ALLOW_LIST)
46 .query("source:nginx".to_string()),
47 CustomDestinationType::CUSTOM_DESTINATION,
48 ),
49 );
50 let configuration = datadog::Configuration::new();
51 let api = LogsCustomDestinationsAPI::with_config(configuration);
52 let resp = api.create_logs_custom_destination(body).await;
53 if let Ok(value) = resp {
54 println!("{:#?}", value);
55 } else {
56 println!("{:#?}", resp.unwrap_err());
57 }
58}
Sourcepub async fn create_logs_custom_destination_with_http_info(
&self,
body: CustomDestinationCreateRequest,
) -> Result<ResponseContent<CustomDestinationResponse>, Error<CreateLogsCustomDestinationError>>
pub async fn create_logs_custom_destination_with_http_info( &self, body: CustomDestinationCreateRequest, ) -> Result<ResponseContent<CustomDestinationResponse>, Error<CreateLogsCustomDestinationError>>
Create a custom destination in your organization.
Sourcepub async fn delete_logs_custom_destination(
&self,
custom_destination_id: String,
) -> Result<(), Error<DeleteLogsCustomDestinationError>>
pub async fn delete_logs_custom_destination( &self, custom_destination_id: String, ) -> Result<(), Error<DeleteLogsCustomDestinationError>>
Delete a specific custom destination in your organization.
Examples found in repository?
6async fn main() {
7 // there is a valid "custom_destination" in the system
8 let custom_destination_data_id = std::env::var("CUSTOM_DESTINATION_DATA_ID").unwrap();
9 let configuration = datadog::Configuration::new();
10 let api = LogsCustomDestinationsAPI::with_config(configuration);
11 let resp = api
12 .delete_logs_custom_destination(custom_destination_data_id.clone())
13 .await;
14 if let Ok(value) = resp {
15 println!("{:#?}", value);
16 } else {
17 println!("{:#?}", resp.unwrap_err());
18 }
19}
Sourcepub async fn delete_logs_custom_destination_with_http_info(
&self,
custom_destination_id: String,
) -> Result<ResponseContent<()>, Error<DeleteLogsCustomDestinationError>>
pub async fn delete_logs_custom_destination_with_http_info( &self, custom_destination_id: String, ) -> Result<ResponseContent<()>, Error<DeleteLogsCustomDestinationError>>
Delete a specific custom destination in your organization.
Sourcepub async fn get_logs_custom_destination(
&self,
custom_destination_id: String,
) -> Result<CustomDestinationResponse, Error<GetLogsCustomDestinationError>>
pub async fn get_logs_custom_destination( &self, custom_destination_id: String, ) -> Result<CustomDestinationResponse, Error<GetLogsCustomDestinationError>>
Get a specific custom destination in your organization.
Examples found in repository?
6async fn main() {
7 // there is a valid "custom_destination" in the system
8 let custom_destination_data_id = std::env::var("CUSTOM_DESTINATION_DATA_ID").unwrap();
9 let configuration = datadog::Configuration::new();
10 let api = LogsCustomDestinationsAPI::with_config(configuration);
11 let resp = api
12 .get_logs_custom_destination(custom_destination_data_id.clone())
13 .await;
14 if let Ok(value) = resp {
15 println!("{:#?}", value);
16 } else {
17 println!("{:#?}", resp.unwrap_err());
18 }
19}
Sourcepub async fn get_logs_custom_destination_with_http_info(
&self,
custom_destination_id: String,
) -> Result<ResponseContent<CustomDestinationResponse>, Error<GetLogsCustomDestinationError>>
pub async fn get_logs_custom_destination_with_http_info( &self, custom_destination_id: String, ) -> Result<ResponseContent<CustomDestinationResponse>, Error<GetLogsCustomDestinationError>>
Get a specific custom destination in your organization.
Sourcepub async fn list_logs_custom_destinations(
&self,
) -> Result<CustomDestinationsResponse, Error<ListLogsCustomDestinationsError>>
pub async fn list_logs_custom_destinations( &self, ) -> Result<CustomDestinationsResponse, Error<ListLogsCustomDestinationsError>>
Get the list of configured custom destinations in your organization with their definitions.
Sourcepub async fn list_logs_custom_destinations_with_http_info(
&self,
) -> Result<ResponseContent<CustomDestinationsResponse>, Error<ListLogsCustomDestinationsError>>
pub async fn list_logs_custom_destinations_with_http_info( &self, ) -> Result<ResponseContent<CustomDestinationsResponse>, Error<ListLogsCustomDestinationsError>>
Get the list of configured custom destinations in your organization with their definitions.
Sourcepub async fn update_logs_custom_destination(
&self,
custom_destination_id: String,
body: CustomDestinationUpdateRequest,
) -> Result<CustomDestinationResponse, Error<UpdateLogsCustomDestinationError>>
pub async fn update_logs_custom_destination( &self, custom_destination_id: String, body: CustomDestinationUpdateRequest, ) -> Result<CustomDestinationResponse, Error<UpdateLogsCustomDestinationError>>
Update the given fields of a specific custom destination in your organization.
Examples found in repository?
11async fn main() {
12 // there is a valid "custom_destination" in the system
13 let custom_destination_data_id = std::env::var("CUSTOM_DESTINATION_DATA_ID").unwrap();
14 let body = CustomDestinationUpdateRequest::new().data(
15 CustomDestinationUpdateRequestDefinition::new(
16 custom_destination_data_id.clone(),
17 CustomDestinationType::CUSTOM_DESTINATION,
18 )
19 .attributes(
20 CustomDestinationUpdateRequestAttributes::new()
21 .enabled(false)
22 .forward_tags(false)
23 .forward_tags_restriction_list_type(
24 CustomDestinationAttributeTagsRestrictionListType::BLOCK_LIST,
25 )
26 .name("Nginx logs (Updated)".to_string())
27 .query("source:nginx".to_string()),
28 ),
29 );
30 let configuration = datadog::Configuration::new();
31 let api = LogsCustomDestinationsAPI::with_config(configuration);
32 let resp = api
33 .update_logs_custom_destination(custom_destination_data_id.clone(), body)
34 .await;
35 if let Ok(value) = resp {
36 println!("{:#?}", value);
37 } else {
38 println!("{:#?}", resp.unwrap_err());
39 }
40}
Sourcepub async fn update_logs_custom_destination_with_http_info(
&self,
custom_destination_id: String,
body: CustomDestinationUpdateRequest,
) -> Result<ResponseContent<CustomDestinationResponse>, Error<UpdateLogsCustomDestinationError>>
pub async fn update_logs_custom_destination_with_http_info( &self, custom_destination_id: String, body: CustomDestinationUpdateRequest, ) -> Result<ResponseContent<CustomDestinationResponse>, Error<UpdateLogsCustomDestinationError>>
Update the given fields of a specific custom destination in your organization.
Trait Implementations§
Source§impl Clone for LogsCustomDestinationsAPI
impl Clone for LogsCustomDestinationsAPI
Source§fn clone(&self) -> LogsCustomDestinationsAPI
fn clone(&self) -> LogsCustomDestinationsAPI
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more