• 智能巡检告警配置最佳实践


    简介:智能异常分析的检测结果通过 SLS 告警功能输出到用户配置的通知渠道。在智能巡检场景中,单个任务往往会巡检大量的实体对象,涉及到的对象规则很多,我们通过SLS新版告警可以实现较好的对于巡检事件的管理。

    智能异常分析的检测结果通过 SLS 告警功能输出到用户配置的通知渠道。在智能巡检场景中,单个任务往往会巡检大量的实体对象,涉及到的对象规则很多,我们通过SLS新版告警可以实现较好的对于巡检事件的管理。

    巡检事件基础结构

    在这里,我们先简单看下巡检任务的基本逻辑:

    对于单个巡检作业而言,内部包含N个实体的巡检,每个巡检实体对应一个巡检模型,其中任意一个异常事件产生后,都会通过告警系统通知到用户,因此我们需要有能力通过不同的方式将结果进行分发和管理。

    我们先看下巡检事件的基础结构,具体的内置模板如下所示:

    ## 数据源
    + Project: ${results[0].project}
    + LogStore: ${results[0].store}
    
    ##  异常对象
    + Entity: ${labels}
    
    ## 异常程度
    + Score: ${annotations.anomaly_score}
    
    ## 异常时序图
    ![image](${annotations.__plot_image__})
    
    [[数据详情](${query_url})]
    [[作业详情](${alert_url})]
    
    [[确认](${annotations.__ensure_url__})]
    [[误报](${annotations.__mismatch_url__})]

    我们一起来看下具体的告警消息的样例,接下来我们所有的描述都会根据对应的如下结果进行描述。

    {
      "results": [
        {
          "store_type": "log",
          "region": "cn-chengdu",
          "project": "sls-ml-demo",
          "store": "machine_metric_logtail",
          "start_time": 1641361140,
          "end_time": 1641361200
        }
      ],
      "labels": {
        "ip": "192.168.1.5",
        "name": "load_avg"
      },
      "annotations": {
        "__ensure_url__": "$url_path",
        "__mismatch_url__": "$url_path",
        "__plot_image__": "$url_path",
        "alert_msg_type": "ml_anomaly_msg",
        "anomaly_score": "0.8000",
        "anomaly_type_id": "1",
        "anomaly_type_name": "STAB_TYPE",
        "job_id": "29030-2bbf5beba0110fa869339708a8217b67",
        "model_id": "9c0f0d5ad4879eb75237e2ec8494f5f1",
        "title": "metric-logtail-sql"
      },
      "severity": 8,
      "drill_down_url": "$url_path"
    }

    典型场景配置

    场景一

    目标:过滤特定实体的异常

    操作步骤

    • 寻找到某个巡检任务的【行动策略ID】,这里要根据用户自己的实际配置来确定,具体的路径如下:

    • 在行动策略中,添加对应的条件

    • 根据上述提供的告警字段而言,我们假设目前只将【标签】中字段为【ip】且值为【192.168.1.5】的告警消息发送到特定的【钉钉机器人】中

    场景二

    目标:过滤特定分数的异常

    操作步骤

    • 找到特定的【行动策略ID】,添加【条件】
    • 配置【异常分数】超过【0.9】分数以上的告警到特定的渠道
    • 【名称】- anomaly_score
    • 【正则】- ^((1\.0*)|(0\.9[0-9]*))$

    场景三

    目标:过滤特定实体的特定分数的异常

    操作步骤

    • 找到特定的【行动策略ID】,添加【条件】
    • 配置【特定实体】的【异常分数】超过【0.9】分数以上的告警到特定的渠道
    • 【标注】的名称设置为 anomaly_score,【正则】- ^((1\.0*)|(0\.9[0-9]*))$
    • 【标签】的名称设置为 ip,对应的实体内容是 192.168.1.5

    场景四

    目标:过滤特定异常类型的异常

    操作步骤

    • 找到特定的【行动策略ID】,添加【条件】
    • 配置【特定异常形态】
    • 配置【标注】anomaly_type_id,根据对应的值进行判别,具体的内容可以参考[异常类型说明](异常类型说明 - 日志服务 - 阿里云)
    • 这里只接受特定的【向上漂移类型的异常】anomaly_type_id = 7

    场景五

    目标:根据巡检事件和根因事件类型进行分发

    操作步骤

    • 找到特定的【行动策略ID】,添加【条件】
    • 配置【智能告警的事件类型】
    • 配置【标注】alert_msg_type,对应的值是 ml_anomaly_msg (这个字段表示的是智能巡检的告警)

    原文链接

    本文为阿里云原创内容,未经允许不得转载。 

  • 相关阅读:
    HackerRank
    HackerRank
    HackerRank
    LeetCode "Bitwise AND of Numbers Range"
    HackerRank
    HackerRank
    LeetCode "Binary Tree Right Side View"
    HihoCoder
    HihoCoder
    HackerRank
  • 原文地址:https://www.cnblogs.com/yunqishequ/p/15822281.html
Copyright © 2020-2023  润新知