日志服务提供智能巡检功能,用于对监控指标或业务日志等数据进行全自动、智能化、自适应的异常巡检。本文介绍如何通过智能巡检功能,对多维时间序列进行巡检与打标反馈。

前提条件

  • 已采集SLB 7层访问日志到名为slb-log的源Logstore。具体操作,请参见数据采集概述
  • 已配置源Logstore的索引。具体操作,请参见配置索引

背景信息

日志服务智能巡检服务支持非指标数据(例如日志数据)进行智能巡检。非指标数据一般指常规的日志数据,您可以通过SQL语句聚合生成指标数据后,再进行智能巡检。

数据示例

例如A公司将其SLB 7层访问日志接入到日志服务后,在智能巡检服务中通过SQL语句计算QPS、延时、出入流量、成功率等指标,即设置实体host,设置特征qpssuccess_dateinflowoutflowlatency。当服务器出现问题时,日志服务将展示QPS、延时、出入流量、成功率等不同维度指标的变化,并通过钉钉群通知给运维人员,便于运维人员及时判断故障,解决问题。

SLB 7层访问日志示例如下图所示。

多维时间序列智能巡检

步骤一:创建智能巡检任务

  1. 登录日志服务控制台
  2. 在Project列表区域,单击目标Project。
  3. 在左侧导航栏中,选择作业 > 智能巡检
  4. 智能巡检区域右侧,单击plus图标。
  5. 创建智能巡检作业配置向导页面的基础信息区域,完成以下配置,然后单击下一步
    智能巡检
  6. 创建智能巡检作业配置向导页面的算法配置区域,完成以下操作。
    1. 数据特征配置区域的数据类型,选择非指标化数据,然后完成以下配置。
      非指标化数据
      其中,数据特征配置中的查询和分析语句如下:
      * |
      select
        __time__-__time__ % 60 as time,
        'slb-total' as host,
        COUNT(*) / 5 as qps,
        round(1.0 * count_if(status < 400) / COUNT(*), 2) as success_rate,
        sum(request_length) as inflow,
        sum(body_bytes_sent) as outflow,
        round(avg(upstream_response_time) * 1000, 3) as latency
      FROM  log
      group by
        time
      order by
        time asc
      limit
        10000
    2. 算法配置区域,完成以下配置,然后在数据采样中,选择一个实体,单击预览采样数据,验证您所配置的参数与您的数据是否适配,以及执行结果是否符合您的预期。
      智能巡检
    3. 调度配置区域,设置智能巡检作业开始执行的时间位置。
      说明 智能巡检作业默认从设置的位置开始一直往后执行。
    4. 单击下一步
  7. 创建智能巡检作业配置向导页面的告警配置区域,完成以下配置,然后单击完成
    如何获取钉钉请求地址,请参见钉钉-自定义
    告警
    当指标异常时,即result.score大于0.75时,日志服务将发送告警通知到钉钉群中。

步骤二:打标反馈

您可以在钉钉群,打标告警通知。

  • 如果告警符合预期,单击确认
  • 如果告警不符合预期,单击误报
告警通知示例如下:打标反馈