#[non_exhaustive]pub struct CustomDestinationCreateRequestDefinition {
pub attributes: CustomDestinationCreateRequestAttributes,
pub type_: CustomDestinationType,
pub additional_properties: BTreeMap<String, Value>,
/* private fields */
}
Expand description
The definition of a custom destination.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.attributes: CustomDestinationCreateRequestAttributes
The attributes associated with the custom destination.
type_: CustomDestinationType
The type of the resource. The value should always be custom_destination
.
additional_properties: BTreeMap<String, Value>
Implementations§
Source§impl CustomDestinationCreateRequestDefinition
impl CustomDestinationCreateRequestDefinition
Sourcepub fn new(
attributes: CustomDestinationCreateRequestAttributes,
type_: CustomDestinationType,
) -> CustomDestinationCreateRequestDefinition
pub fn new( attributes: CustomDestinationCreateRequestAttributes, type_: CustomDestinationType, ) -> CustomDestinationCreateRequestDefinition
Examples found in repository?
examples/v2_logs-custom-destinations_CreateLogsCustomDestination_1288180912.rs (lines 16-35)
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
examples/v2_logs-custom-destinations_CreateLogsCustomDestination_141236188.rs (lines 17-43)
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 (lines 19-44)
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}
examples/v2_logs-custom-destinations_CreateLogsCustomDestination_2184123765.rs (lines 19-44)
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}
examples/v2_logs-custom-destinations_CreateLogsCustomDestination_1091442807.rs (lines 21-48)
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}
pub fn additional_properties(self, value: BTreeMap<String, Value>) -> Self
Trait Implementations§
Source§impl Clone for CustomDestinationCreateRequestDefinition
impl Clone for CustomDestinationCreateRequestDefinition
Source§fn clone(&self) -> CustomDestinationCreateRequestDefinition
fn clone(&self) -> CustomDestinationCreateRequestDefinition
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<'de> Deserialize<'de> for CustomDestinationCreateRequestDefinition
impl<'de> Deserialize<'de> for CustomDestinationCreateRequestDefinition
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for CustomDestinationCreateRequestDefinition
impl PartialEq for CustomDestinationCreateRequestDefinition
Source§fn eq(&self, other: &CustomDestinationCreateRequestDefinition) -> bool
fn eq(&self, other: &CustomDestinationCreateRequestDefinition) -> bool
Tests for
self
and other
values to be equal, and is used by ==
.impl StructuralPartialEq for CustomDestinationCreateRequestDefinition
Auto Trait Implementations§
impl Freeze for CustomDestinationCreateRequestDefinition
impl RefUnwindSafe for CustomDestinationCreateRequestDefinition
impl Send for CustomDestinationCreateRequestDefinition
impl Sync for CustomDestinationCreateRequestDefinition
impl Unpin for CustomDestinationCreateRequestDefinition
impl UnwindSafe for CustomDestinationCreateRequestDefinition
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more