Struct MonitorsAPI

Source
pub struct MonitorsAPI { /* private fields */ }
Expand description

Monitors allow you to watch a metric or check that you care about and notifies your team when a defined threshold has exceeded.

For more information, see Creating Monitors and Tag Policies.

Implementations§

Source§

impl MonitorsAPI

Source

pub fn new() -> Self

Source

pub fn with_config(config: Configuration) -> Self

Examples found in repository?
examples/v2_monitors_ListMonitorConfigPolicies.rs (line 8)
6async fn main() {
7    let configuration = datadog::Configuration::new();
8    let api = MonitorsAPI::with_config(configuration);
9    let resp = api.list_monitor_config_policies().await;
10    if let Ok(value) = resp {
11        println!("{:#?}", value);
12    } else {
13        println!("{:#?}", resp.unwrap_err());
14    }
15}
More examples
Hide additional examples
examples/v2_monitors_ListMonitorUserTemplates.rs (line 9)
6async fn main() {
7    let mut configuration = datadog::Configuration::new();
8    configuration.set_unstable_operation_enabled("v2.ListMonitorUserTemplates", true);
9    let api = MonitorsAPI::with_config(configuration);
10    let resp = api.list_monitor_user_templates().await;
11    if let Ok(value) = resp {
12        println!("{:#?}", value);
13    } else {
14        println!("{:#?}", resp.unwrap_err());
15    }
16}
examples/v2_monitors_DeleteMonitorUserTemplate.rs (line 9)
6async fn main() {
7    let mut configuration = datadog::Configuration::new();
8    configuration.set_unstable_operation_enabled("v2.DeleteMonitorUserTemplate", true);
9    let api = MonitorsAPI::with_config(configuration);
10    let resp = api
11        .delete_monitor_user_template("template_id".to_string())
12        .await;
13    if let Ok(value) = resp {
14        println!("{:#?}", value);
15    } else {
16        println!("{:#?}", resp.unwrap_err());
17    }
18}
examples/v2_monitors_GetMonitorNotificationRules.rs (line 10)
7async fn main() {
8    let mut configuration = datadog::Configuration::new();
9    configuration.set_unstable_operation_enabled("v2.GetMonitorNotificationRules", true);
10    let api = MonitorsAPI::with_config(configuration);
11    let resp = api
12        .get_monitor_notification_rules(GetMonitorNotificationRulesOptionalParams::default())
13        .await;
14    if let Ok(value) = resp {
15        println!("{:#?}", value);
16    } else {
17        println!("{:#?}", resp.unwrap_err());
18    }
19}
examples/v2_monitors_GetMonitorConfigPolicy.rs (line 11)
6async fn main() {
7    // there is a valid "monitor_configuration_policy" in the system
8    let monitor_configuration_policy_data_id =
9        std::env::var("MONITOR_CONFIGURATION_POLICY_DATA_ID").unwrap();
10    let configuration = datadog::Configuration::new();
11    let api = MonitorsAPI::with_config(configuration);
12    let resp = api
13        .get_monitor_config_policy(monitor_configuration_policy_data_id.clone())
14        .await;
15    if let Ok(value) = resp {
16        println!("{:#?}", value);
17    } else {
18        println!("{:#?}", resp.unwrap_err());
19    }
20}
examples/v2_monitors_DeleteMonitorConfigPolicy.rs (line 11)
6async fn main() {
7    // there is a valid "monitor_configuration_policy" in the system
8    let monitor_configuration_policy_data_id =
9        std::env::var("MONITOR_CONFIGURATION_POLICY_DATA_ID").unwrap();
10    let configuration = datadog::Configuration::new();
11    let api = MonitorsAPI::with_config(configuration);
12    let resp = api
13        .delete_monitor_config_policy(monitor_configuration_policy_data_id.clone())
14        .await;
15    if let Ok(value) = resp {
16        println!("{:#?}", value);
17    } else {
18        println!("{:#?}", resp.unwrap_err());
19    }
20}
Source

pub fn with_client_and_config( config: Configuration, client: ClientWithMiddleware, ) -> Self

Source

pub async fn create_monitor_config_policy( &self, body: MonitorConfigPolicyCreateRequest, ) -> Result<MonitorConfigPolicyResponse, Error<CreateMonitorConfigPolicyError>>

Create a monitor configuration policy.

Examples found in repository?
examples/v2_monitors_CreateMonitorConfigPolicy.rs (line 29)
13async fn main() {
14    let body = MonitorConfigPolicyCreateRequest::new(MonitorConfigPolicyCreateData::new(
15        MonitorConfigPolicyAttributeCreateRequest::new(
16            MonitorConfigPolicyPolicyCreateRequest::MonitorConfigPolicyTagPolicyCreateRequest(
17                Box::new(MonitorConfigPolicyTagPolicyCreateRequest::new(
18                    "examplemonitor".to_string(),
19                    false,
20                    vec!["prod".to_string(), "staging".to_string()],
21                )),
22            ),
23            MonitorConfigPolicyType::TAG,
24        ),
25        MonitorConfigPolicyResourceType::MONITOR_CONFIG_POLICY,
26    ));
27    let configuration = datadog::Configuration::new();
28    let api = MonitorsAPI::with_config(configuration);
29    let resp = api.create_monitor_config_policy(body).await;
30    if let Ok(value) = resp {
31        println!("{:#?}", value);
32    } else {
33        println!("{:#?}", resp.unwrap_err());
34    }
35}
Source

pub async fn create_monitor_config_policy_with_http_info( &self, body: MonitorConfigPolicyCreateRequest, ) -> Result<ResponseContent<MonitorConfigPolicyResponse>, Error<CreateMonitorConfigPolicyError>>

Create a monitor configuration policy.

Source

pub async fn create_monitor_notification_rule( &self, body: MonitorNotificationRuleCreateRequest, ) -> Result<MonitorNotificationRuleResponse, Error<CreateMonitorNotificationRuleError>>

Creates a monitor notification rule.

Examples found in repository?
examples/v2_monitors_CreateMonitorNotificationRule.rs (line 32)
12async fn main() {
13    let body = MonitorNotificationRuleCreateRequest::new(
14        MonitorNotificationRuleCreateRequestData::new(
15            MonitorNotificationRuleAttributes::new(
16                "test rule".to_string(),
17                vec!["slack-test-channel".to_string(), "jira-test".to_string()],
18            )
19            .filter(
20                MonitorNotificationRuleFilter::MonitorNotificationRuleFilterTags(Box::new(
21                    MonitorNotificationRuleFilterTags::new(
22                        vec!["test:example-monitor".to_string()],
23                    ),
24                )),
25            ),
26        )
27        .type_(MonitorNotificationRuleResourceType::MONITOR_NOTIFICATION_RULE),
28    );
29    let mut configuration = datadog::Configuration::new();
30    configuration.set_unstable_operation_enabled("v2.CreateMonitorNotificationRule", true);
31    let api = MonitorsAPI::with_config(configuration);
32    let resp = api.create_monitor_notification_rule(body).await;
33    if let Ok(value) = resp {
34        println!("{:#?}", value);
35    } else {
36        println!("{:#?}", resp.unwrap_err());
37    }
38}
Source

pub async fn create_monitor_notification_rule_with_http_info( &self, body: MonitorNotificationRuleCreateRequest, ) -> Result<ResponseContent<MonitorNotificationRuleResponse>, Error<CreateMonitorNotificationRuleError>>

Creates a monitor notification rule.

Source

pub async fn create_monitor_user_template( &self, body: MonitorUserTemplateCreateRequest, ) -> Result<MonitorUserTemplateCreateResponse, Error<CreateMonitorUserTemplateError>>

Create a new monitor user template.

Examples found in repository?
examples/v2_monitors_CreateMonitorUserTemplate.rs (line 40)
13async fn main() {
14    let body = MonitorUserTemplateCreateRequest::new(MonitorUserTemplateCreateData::new(
15        MonitorUserTemplateRequestAttributes::new(
16            BTreeMap::from([
17                ("message".to_string(), Value::from("A msg.")),
18                ("name".to_string(), Value::from("A name example-monitor")),
19                (
20                    "query".to_string(),
21                    Value::from("avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100"),
22                ),
23                ("type".to_string(), Value::from("query alert")),
24            ]),
25            vec!["integration:Azure".to_string()],
26            "Postgres DB example-monitor".to_string(),
27        )
28        .description(Some("A description.".to_string()))
29        .template_variables(vec![MonitorUserTemplateTemplateVariablesItems::new(
30            "regionName".to_string(),
31        )
32        .available_values(vec!["value1".to_string(), "value2".to_string()])
33        .defaults(vec!["defaultValue".to_string()])
34        .tag_key("datacenter".to_string())]),
35        MonitorUserTemplateResourceType::MONITOR_USER_TEMPLATE,
36    ));
37    let mut configuration = datadog::Configuration::new();
38    configuration.set_unstable_operation_enabled("v2.CreateMonitorUserTemplate", true);
39    let api = MonitorsAPI::with_config(configuration);
40    let resp = api.create_monitor_user_template(body).await;
41    if let Ok(value) = resp {
42        println!("{:#?}", value);
43    } else {
44        println!("{:#?}", resp.unwrap_err());
45    }
46}
Source

pub async fn create_monitor_user_template_with_http_info( &self, body: MonitorUserTemplateCreateRequest, ) -> Result<ResponseContent<MonitorUserTemplateCreateResponse>, Error<CreateMonitorUserTemplateError>>

Create a new monitor user template.

Source

pub async fn delete_monitor_config_policy( &self, policy_id: String, ) -> Result<(), Error<DeleteMonitorConfigPolicyError>>

Delete a monitor configuration policy.

Examples found in repository?
examples/v2_monitors_DeleteMonitorConfigPolicy.rs (line 13)
6async fn main() {
7    // there is a valid "monitor_configuration_policy" in the system
8    let monitor_configuration_policy_data_id =
9        std::env::var("MONITOR_CONFIGURATION_POLICY_DATA_ID").unwrap();
10    let configuration = datadog::Configuration::new();
11    let api = MonitorsAPI::with_config(configuration);
12    let resp = api
13        .delete_monitor_config_policy(monitor_configuration_policy_data_id.clone())
14        .await;
15    if let Ok(value) = resp {
16        println!("{:#?}", value);
17    } else {
18        println!("{:#?}", resp.unwrap_err());
19    }
20}
Source

pub async fn delete_monitor_config_policy_with_http_info( &self, policy_id: String, ) -> Result<ResponseContent<()>, Error<DeleteMonitorConfigPolicyError>>

Delete a monitor configuration policy.

Source

pub async fn delete_monitor_notification_rule( &self, rule_id: String, ) -> Result<(), Error<DeleteMonitorNotificationRuleError>>

Deletes a monitor notification rule by rule_id.

Examples found in repository?
examples/v2_monitors_DeleteMonitorNotificationRule.rs (line 14)
6async fn main() {
7    // there is a valid "monitor_notification_rule" in the system
8    let monitor_notification_rule_data_id =
9        std::env::var("MONITOR_NOTIFICATION_RULE_DATA_ID").unwrap();
10    let mut configuration = datadog::Configuration::new();
11    configuration.set_unstable_operation_enabled("v2.DeleteMonitorNotificationRule", true);
12    let api = MonitorsAPI::with_config(configuration);
13    let resp = api
14        .delete_monitor_notification_rule(monitor_notification_rule_data_id.clone())
15        .await;
16    if let Ok(value) = resp {
17        println!("{:#?}", value);
18    } else {
19        println!("{:#?}", resp.unwrap_err());
20    }
21}
Source

pub async fn delete_monitor_notification_rule_with_http_info( &self, rule_id: String, ) -> Result<ResponseContent<()>, Error<DeleteMonitorNotificationRuleError>>

Deletes a monitor notification rule by rule_id.

Source

pub async fn delete_monitor_user_template( &self, template_id: String, ) -> Result<(), Error<DeleteMonitorUserTemplateError>>

Delete an existing monitor user template by its ID.

Examples found in repository?
examples/v2_monitors_DeleteMonitorUserTemplate.rs (line 11)
6async fn main() {
7    let mut configuration = datadog::Configuration::new();
8    configuration.set_unstable_operation_enabled("v2.DeleteMonitorUserTemplate", true);
9    let api = MonitorsAPI::with_config(configuration);
10    let resp = api
11        .delete_monitor_user_template("template_id".to_string())
12        .await;
13    if let Ok(value) = resp {
14        println!("{:#?}", value);
15    } else {
16        println!("{:#?}", resp.unwrap_err());
17    }
18}
Source

pub async fn delete_monitor_user_template_with_http_info( &self, template_id: String, ) -> Result<ResponseContent<()>, Error<DeleteMonitorUserTemplateError>>

Delete an existing monitor user template by its ID.

Source

pub async fn get_monitor_config_policy( &self, policy_id: String, ) -> Result<MonitorConfigPolicyResponse, Error<GetMonitorConfigPolicyError>>

Get a monitor configuration policy by policy_id.

Examples found in repository?
examples/v2_monitors_GetMonitorConfigPolicy.rs (line 13)
6async fn main() {
7    // there is a valid "monitor_configuration_policy" in the system
8    let monitor_configuration_policy_data_id =
9        std::env::var("MONITOR_CONFIGURATION_POLICY_DATA_ID").unwrap();
10    let configuration = datadog::Configuration::new();
11    let api = MonitorsAPI::with_config(configuration);
12    let resp = api
13        .get_monitor_config_policy(monitor_configuration_policy_data_id.clone())
14        .await;
15    if let Ok(value) = resp {
16        println!("{:#?}", value);
17    } else {
18        println!("{:#?}", resp.unwrap_err());
19    }
20}
Source

pub async fn get_monitor_config_policy_with_http_info( &self, policy_id: String, ) -> Result<ResponseContent<MonitorConfigPolicyResponse>, Error<GetMonitorConfigPolicyError>>

Get a monitor configuration policy by policy_id.

Source

pub async fn get_monitor_notification_rule( &self, rule_id: String, params: GetMonitorNotificationRuleOptionalParams, ) -> Result<MonitorNotificationRuleResponse, Error<GetMonitorNotificationRuleError>>

Returns a monitor notification rule by rule_id.

Examples found in repository?
examples/v2_monitors_GetMonitorNotificationRule.rs (lines 15-18)
7async fn main() {
8    // there is a valid "monitor_notification_rule" in the system
9    let monitor_notification_rule_data_id =
10        std::env::var("MONITOR_NOTIFICATION_RULE_DATA_ID").unwrap();
11    let mut configuration = datadog::Configuration::new();
12    configuration.set_unstable_operation_enabled("v2.GetMonitorNotificationRule", true);
13    let api = MonitorsAPI::with_config(configuration);
14    let resp = api
15        .get_monitor_notification_rule(
16            monitor_notification_rule_data_id.clone(),
17            GetMonitorNotificationRuleOptionalParams::default(),
18        )
19        .await;
20    if let Ok(value) = resp {
21        println!("{:#?}", value);
22    } else {
23        println!("{:#?}", resp.unwrap_err());
24    }
25}
Source

pub async fn get_monitor_notification_rule_with_http_info( &self, rule_id: String, params: GetMonitorNotificationRuleOptionalParams, ) -> Result<ResponseContent<MonitorNotificationRuleResponse>, Error<GetMonitorNotificationRuleError>>

Returns a monitor notification rule by rule_id.

Source

pub async fn get_monitor_notification_rules( &self, params: GetMonitorNotificationRulesOptionalParams, ) -> Result<MonitorNotificationRuleListResponse, Error<GetMonitorNotificationRulesError>>

Returns a list of all monitor notification rules.

Examples found in repository?
examples/v2_monitors_GetMonitorNotificationRules.rs (line 12)
7async fn main() {
8    let mut configuration = datadog::Configuration::new();
9    configuration.set_unstable_operation_enabled("v2.GetMonitorNotificationRules", true);
10    let api = MonitorsAPI::with_config(configuration);
11    let resp = api
12        .get_monitor_notification_rules(GetMonitorNotificationRulesOptionalParams::default())
13        .await;
14    if let Ok(value) = resp {
15        println!("{:#?}", value);
16    } else {
17        println!("{:#?}", resp.unwrap_err());
18    }
19}
Source

pub async fn get_monitor_notification_rules_with_http_info( &self, params: GetMonitorNotificationRulesOptionalParams, ) -> Result<ResponseContent<MonitorNotificationRuleListResponse>, Error<GetMonitorNotificationRulesError>>

Returns a list of all monitor notification rules.

Source

pub async fn get_monitor_user_template( &self, template_id: String, params: GetMonitorUserTemplateOptionalParams, ) -> Result<MonitorUserTemplateResponse, Error<GetMonitorUserTemplateError>>

Retrieve a monitor user template by its ID.

Examples found in repository?
examples/v2_monitors_GetMonitorUserTemplate.rs (lines 14-17)
7async fn main() {
8    // there is a valid "monitor_user_template" in the system
9    let monitor_user_template_data_id = std::env::var("MONITOR_USER_TEMPLATE_DATA_ID").unwrap();
10    let mut configuration = datadog::Configuration::new();
11    configuration.set_unstable_operation_enabled("v2.GetMonitorUserTemplate", true);
12    let api = MonitorsAPI::with_config(configuration);
13    let resp = api
14        .get_monitor_user_template(
15            monitor_user_template_data_id.clone(),
16            GetMonitorUserTemplateOptionalParams::default(),
17        )
18        .await;
19    if let Ok(value) = resp {
20        println!("{:#?}", value);
21    } else {
22        println!("{:#?}", resp.unwrap_err());
23    }
24}
Source

pub async fn get_monitor_user_template_with_http_info( &self, template_id: String, params: GetMonitorUserTemplateOptionalParams, ) -> Result<ResponseContent<MonitorUserTemplateResponse>, Error<GetMonitorUserTemplateError>>

Retrieve a monitor user template by its ID.

Source

pub async fn list_monitor_config_policies( &self, ) -> Result<MonitorConfigPolicyListResponse, Error<ListMonitorConfigPoliciesError>>

Get all monitor configuration policies.

Examples found in repository?
examples/v2_monitors_ListMonitorConfigPolicies.rs (line 9)
6async fn main() {
7    let configuration = datadog::Configuration::new();
8    let api = MonitorsAPI::with_config(configuration);
9    let resp = api.list_monitor_config_policies().await;
10    if let Ok(value) = resp {
11        println!("{:#?}", value);
12    } else {
13        println!("{:#?}", resp.unwrap_err());
14    }
15}
Source

pub async fn list_monitor_config_policies_with_http_info( &self, ) -> Result<ResponseContent<MonitorConfigPolicyListResponse>, Error<ListMonitorConfigPoliciesError>>

Get all monitor configuration policies.

Source

pub async fn list_monitor_user_templates( &self, ) -> Result<MonitorUserTemplateListResponse, Error<ListMonitorUserTemplatesError>>

Retrieve all monitor user templates.

Examples found in repository?
examples/v2_monitors_ListMonitorUserTemplates.rs (line 10)
6async fn main() {
7    let mut configuration = datadog::Configuration::new();
8    configuration.set_unstable_operation_enabled("v2.ListMonitorUserTemplates", true);
9    let api = MonitorsAPI::with_config(configuration);
10    let resp = api.list_monitor_user_templates().await;
11    if let Ok(value) = resp {
12        println!("{:#?}", value);
13    } else {
14        println!("{:#?}", resp.unwrap_err());
15    }
16}
Source

pub async fn list_monitor_user_templates_with_http_info( &self, ) -> Result<ResponseContent<MonitorUserTemplateListResponse>, Error<ListMonitorUserTemplatesError>>

Retrieve all monitor user templates.

Source

pub async fn update_monitor_config_policy( &self, policy_id: String, body: MonitorConfigPolicyEditRequest, ) -> Result<MonitorConfigPolicyResponse, Error<UpdateMonitorConfigPolicyError>>

Edit a monitor configuration policy.

Examples found in repository?
examples/v2_monitors_UpdateMonitorConfigPolicy.rs (line 33)
13async fn main() {
14    // there is a valid "monitor_configuration_policy" in the system
15    let monitor_configuration_policy_data_id =
16        std::env::var("MONITOR_CONFIGURATION_POLICY_DATA_ID").unwrap();
17    let body = MonitorConfigPolicyEditRequest::new(MonitorConfigPolicyEditData::new(
18        MonitorConfigPolicyAttributeEditRequest::new(
19            MonitorConfigPolicyPolicy::MonitorConfigPolicyTagPolicy(Box::new(
20                MonitorConfigPolicyTagPolicy::new()
21                    .tag_key("examplemonitor".to_string())
22                    .tag_key_required(false)
23                    .valid_tag_values(vec!["prod".to_string(), "staging".to_string()]),
24            )),
25            MonitorConfigPolicyType::TAG,
26        ),
27        monitor_configuration_policy_data_id.clone(),
28        MonitorConfigPolicyResourceType::MONITOR_CONFIG_POLICY,
29    ));
30    let configuration = datadog::Configuration::new();
31    let api = MonitorsAPI::with_config(configuration);
32    let resp = api
33        .update_monitor_config_policy(monitor_configuration_policy_data_id.clone(), body)
34        .await;
35    if let Ok(value) = resp {
36        println!("{:#?}", value);
37    } else {
38        println!("{:#?}", resp.unwrap_err());
39    }
40}
Source

pub async fn update_monitor_config_policy_with_http_info( &self, policy_id: String, body: MonitorConfigPolicyEditRequest, ) -> Result<ResponseContent<MonitorConfigPolicyResponse>, Error<UpdateMonitorConfigPolicyError>>

Edit a monitor configuration policy.

Source

pub async fn update_monitor_notification_rule( &self, rule_id: String, body: MonitorNotificationRuleUpdateRequest, ) -> Result<MonitorNotificationRuleResponse, Error<UpdateMonitorNotificationRuleError>>

Updates a monitor notification rule by rule_id.

Examples found in repository?
examples/v2_monitors_UpdateMonitorNotificationRule.rs (line 38)
12async fn main() {
13    // there is a valid "monitor_notification_rule" in the system
14    let monitor_notification_rule_data_id =
15        std::env::var("MONITOR_NOTIFICATION_RULE_DATA_ID").unwrap();
16    let body = MonitorNotificationRuleUpdateRequest::new(
17        MonitorNotificationRuleUpdateRequestData::new(
18            MonitorNotificationRuleAttributes::new(
19                "updated rule".to_string(),
20                vec!["slack-test-channel".to_string()],
21            )
22            .filter(
23                MonitorNotificationRuleFilter::MonitorNotificationRuleFilterTags(Box::new(
24                    MonitorNotificationRuleFilterTags::new(vec![
25                        "test:example-monitor".to_string(),
26                        "host:abc".to_string(),
27                    ]),
28                )),
29            ),
30            monitor_notification_rule_data_id.clone(),
31        )
32        .type_(MonitorNotificationRuleResourceType::MONITOR_NOTIFICATION_RULE),
33    );
34    let mut configuration = datadog::Configuration::new();
35    configuration.set_unstable_operation_enabled("v2.UpdateMonitorNotificationRule", true);
36    let api = MonitorsAPI::with_config(configuration);
37    let resp = api
38        .update_monitor_notification_rule(monitor_notification_rule_data_id.clone(), body)
39        .await;
40    if let Ok(value) = resp {
41        println!("{:#?}", value);
42    } else {
43        println!("{:#?}", resp.unwrap_err());
44    }
45}
Source

pub async fn update_monitor_notification_rule_with_http_info( &self, rule_id: String, body: MonitorNotificationRuleUpdateRequest, ) -> Result<ResponseContent<MonitorNotificationRuleResponse>, Error<UpdateMonitorNotificationRuleError>>

Updates a monitor notification rule by rule_id.

Source

pub async fn update_monitor_user_template( &self, template_id: String, body: MonitorUserTemplateUpdateRequest, ) -> Result<MonitorUserTemplateResponse, Error<UpdateMonitorUserTemplateError>>

Creates a new version of an existing monitor user template.

Examples found in repository?
examples/v2_monitors_UpdateMonitorUserTemplate.rs (line 44)
13async fn main() {
14    // there is a valid "monitor_user_template" in the system
15    let monitor_user_template_data_id = std::env::var("MONITOR_USER_TEMPLATE_DATA_ID").unwrap();
16    let body = MonitorUserTemplateUpdateRequest::new(MonitorUserTemplateUpdateData::new(
17        MonitorUserTemplateRequestAttributes::new(
18            BTreeMap::from([
19                ("message".to_string(), Value::from("A msg.")),
20                ("name".to_string(), Value::from("A name example-monitor")),
21                (
22                    "query".to_string(),
23                    Value::from("avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100"),
24                ),
25                ("type".to_string(), Value::from("query alert")),
26            ]),
27            vec!["integration:Azure".to_string()],
28            "Postgres DB example-monitor".to_string(),
29        )
30        .description(Some("A description.".to_string()))
31        .template_variables(vec![MonitorUserTemplateTemplateVariablesItems::new(
32            "regionName".to_string(),
33        )
34        .available_values(vec!["value1".to_string(), "value2".to_string()])
35        .defaults(vec!["defaultValue".to_string()])
36        .tag_key("datacenter".to_string())]),
37        monitor_user_template_data_id.clone(),
38        MonitorUserTemplateResourceType::MONITOR_USER_TEMPLATE,
39    ));
40    let mut configuration = datadog::Configuration::new();
41    configuration.set_unstable_operation_enabled("v2.UpdateMonitorUserTemplate", true);
42    let api = MonitorsAPI::with_config(configuration);
43    let resp = api
44        .update_monitor_user_template(monitor_user_template_data_id.clone(), body)
45        .await;
46    if let Ok(value) = resp {
47        println!("{:#?}", value);
48    } else {
49        println!("{:#?}", resp.unwrap_err());
50    }
51}
Source

pub async fn update_monitor_user_template_with_http_info( &self, template_id: String, body: MonitorUserTemplateUpdateRequest, ) -> Result<ResponseContent<MonitorUserTemplateResponse>, Error<UpdateMonitorUserTemplateError>>

Creates a new version of an existing monitor user template.

Source

pub async fn validate_existing_monitor_user_template( &self, template_id: String, body: MonitorUserTemplateUpdateRequest, ) -> Result<(), Error<ValidateExistingMonitorUserTemplateError>>

Validate the structure and content of an existing monitor user template being updated to a new version.

Examples found in repository?
examples/v2_monitors_ValidateExistingMonitorUserTemplate.rs (line 44)
13async fn main() {
14    // there is a valid "monitor_user_template" in the system
15    let monitor_user_template_data_id = std::env::var("MONITOR_USER_TEMPLATE_DATA_ID").unwrap();
16    let body = MonitorUserTemplateUpdateRequest::new(MonitorUserTemplateUpdateData::new(
17        MonitorUserTemplateRequestAttributes::new(
18            BTreeMap::from([
19                ("message".to_string(), Value::from("A msg.")),
20                ("name".to_string(), Value::from("A name example-monitor")),
21                (
22                    "query".to_string(),
23                    Value::from("avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100"),
24                ),
25                ("type".to_string(), Value::from("query alert")),
26            ]),
27            vec!["integration:Azure".to_string()],
28            "Postgres DB example-monitor".to_string(),
29        )
30        .description(Some("A description.".to_string()))
31        .template_variables(vec![MonitorUserTemplateTemplateVariablesItems::new(
32            "regionName".to_string(),
33        )
34        .available_values(vec!["value1".to_string(), "value2".to_string()])
35        .defaults(vec!["defaultValue".to_string()])
36        .tag_key("datacenter".to_string())]),
37        monitor_user_template_data_id.clone(),
38        MonitorUserTemplateResourceType::MONITOR_USER_TEMPLATE,
39    ));
40    let mut configuration = datadog::Configuration::new();
41    configuration.set_unstable_operation_enabled("v2.ValidateExistingMonitorUserTemplate", true);
42    let api = MonitorsAPI::with_config(configuration);
43    let resp = api
44        .validate_existing_monitor_user_template(monitor_user_template_data_id.clone(), body)
45        .await;
46    if let Ok(value) = resp {
47        println!("{:#?}", value);
48    } else {
49        println!("{:#?}", resp.unwrap_err());
50    }
51}
Source

pub async fn validate_existing_monitor_user_template_with_http_info( &self, template_id: String, body: MonitorUserTemplateUpdateRequest, ) -> Result<ResponseContent<()>, Error<ValidateExistingMonitorUserTemplateError>>

Validate the structure and content of an existing monitor user template being updated to a new version.

Source

pub async fn validate_monitor_user_template( &self, body: MonitorUserTemplateCreateRequest, ) -> Result<(), Error<ValidateMonitorUserTemplateError>>

Validate the structure and content of a monitor user template.

Examples found in repository?
examples/v2_monitors_ValidateMonitorUserTemplate.rs (line 40)
13async fn main() {
14    let body = MonitorUserTemplateCreateRequest::new(MonitorUserTemplateCreateData::new(
15        MonitorUserTemplateRequestAttributes::new(
16            BTreeMap::from([
17                ("message".to_string(), Value::from("A msg.")),
18                ("name".to_string(), Value::from("A name example-monitor")),
19                (
20                    "query".to_string(),
21                    Value::from("avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100"),
22                ),
23                ("type".to_string(), Value::from("query alert")),
24            ]),
25            vec!["integration:Azure".to_string()],
26            "Postgres DB example-monitor".to_string(),
27        )
28        .description(Some("A description.".to_string()))
29        .template_variables(vec![MonitorUserTemplateTemplateVariablesItems::new(
30            "regionName".to_string(),
31        )
32        .available_values(vec!["value1".to_string(), "value2".to_string()])
33        .defaults(vec!["defaultValue".to_string()])
34        .tag_key("datacenter".to_string())]),
35        MonitorUserTemplateResourceType::MONITOR_USER_TEMPLATE,
36    ));
37    let mut configuration = datadog::Configuration::new();
38    configuration.set_unstable_operation_enabled("v2.ValidateMonitorUserTemplate", true);
39    let api = MonitorsAPI::with_config(configuration);
40    let resp = api.validate_monitor_user_template(body).await;
41    if let Ok(value) = resp {
42        println!("{:#?}", value);
43    } else {
44        println!("{:#?}", resp.unwrap_err());
45    }
46}
Source

pub async fn validate_monitor_user_template_with_http_info( &self, body: MonitorUserTemplateCreateRequest, ) -> Result<ResponseContent<()>, Error<ValidateMonitorUserTemplateError>>

Validate the structure and content of a monitor user template.

Trait Implementations§

Source§

impl Clone for MonitorsAPI

Source§

fn clone(&self) -> MonitorsAPI

Returns a duplicate of the value. Read more
1.0.0 · Source§

const fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for MonitorsAPI

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for MonitorsAPI

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,