示例#1
0
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.")
示例#2
0
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))