def sample_delete_detection_config(detection_config_id): # [START delete_anomaly_detection_config] from azure.core.exceptions import ResourceNotFoundError from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential, MetricsAdvisorAdministrationClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") client = MetricsAdvisorAdministrationClient( service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) client.delete_metric_anomaly_detection_configuration(detection_config_id) try: client.get_metric_anomaly_detection_configuration(detection_config_id) except ResourceNotFoundError: print("Detection configuration successfully deleted.")
def sample_get_detection_config(detection_config_id): # [START get_anomaly_detection_config] from azure.ai.metricsadvisor import MetricsAdvisorKeyCredential, MetricsAdvisorAdministrationClient service_endpoint = os.getenv("METRICS_ADVISOR_ENDPOINT") subscription_key = os.getenv("METRICS_ADVISOR_SUBSCRIPTION_KEY") api_key = os.getenv("METRICS_ADVISOR_API_KEY") client = MetricsAdvisorAdministrationClient( service_endpoint, MetricsAdvisorKeyCredential(subscription_key, api_key)) config = client.get_metric_anomaly_detection_configuration( detection_config_id) print("Detection config name: {}".format(config.name)) print("Description: {}".format(config.description)) print("Metric ID: {}".format(config.metric_id)) print("\nDetection conditions specified for configuration...") print("\nWhole Series Detection Conditions:\n") conditions = config.whole_series_detection_condition print("Use {} operator for multiple detection conditions".format( conditions.cross_conditions_operator)) print("Smart Detection Condition:") print("- Sensitivity: {}".format( conditions.smart_detection_condition.sensitivity)) print("- Detection direction: {}".format( conditions.smart_detection_condition.anomaly_detector_direction)) print( "- Suppress conditions: minimum number: {}; minimum ratio: {}".format( conditions.smart_detection_condition.suppress_condition.min_number, conditions.smart_detection_condition.suppress_condition.min_ratio)) print("Hard Threshold Condition:") print("- Lower bound: {}".format( conditions.hard_threshold_condition.lower_bound)) print("- Upper bound: {}".format( conditions.hard_threshold_condition.upper_bound)) print("- Detection direction: {}".format( conditions.smart_detection_condition.anomaly_detector_direction)) print( "- Suppress conditions: minimum number: {}; minimum ratio: {}".format( conditions.smart_detection_condition.suppress_condition.min_number, conditions.smart_detection_condition.suppress_condition.min_ratio)) print("Change Threshold Condition:") print("- Change percentage: {}".format( conditions.change_threshold_condition.change_percentage)) print("- Shift point: {}".format( conditions.change_threshold_condition.shift_point)) print("- Detect anomaly if within range: {}".format( conditions.change_threshold_condition.within_range)) print("- Detection direction: {}".format( conditions.smart_detection_condition.anomaly_detector_direction)) print( "- Suppress conditions: minimum number: {}; minimum ratio: {}".format( conditions.smart_detection_condition.suppress_condition.min_number, conditions.smart_detection_condition.suppress_condition.min_ratio))