主页

索引

模块索引

搜索页面

机器学习

根因分析函数

rca_kpi_search:

函数格式
select rca_kpi_search(varchar_array, name_array, real, forecast, level)
参数说明如下:
varchar_array   属性维度字段。 数组形式,例如:array[col1, col2, col3]。
name_array      属性名字字段。 数组形式,例如:array['col1', 'col2', 'col3']。
real            varchar_array对应的实际值。  double 类型,取值范围:全体实数。
forecast        varchar_array对应的预测值。  double 类型,取值范围:全体实数。
level           输出的根因集合对应的维度属性的数量,
                  其中level=0表示输出找到的全部根因集合。
                  long类型,取值范围:0<=level<=分析维度数(对应varchar_array的长度)

查询分析:

% 先利用子查询去组织每个细粒度属性对应的实际值和预测值,
% 然后直接调用rca_kpi_search函数去分析异常时刻的根因。
* not status:200 |
  select rca_kpi_search(
      array[ Project, LogStore, UserAgent, Method ],
      array[ 'Project', 'LogStore', 'UserAgent', 'Method' ],
      real, forecast, 1)
  from (
      select
        Project, LogStore, UserAgent, Method,
        sum(
            case when time < 1552436040 then real else 0 end
          ) * 1.0 / sum(
              case when time < 1552436040 then 1 else 0 end
          ) as forecast,
        sum(
            case when time >=1552436040 then real else 0 end
          ) *1.0 / sum(case when time >= 1552436040 then 1 else 0 end) as real
      from (
          select
              __time__ - __time__ % 60 as time, Project, LogStore,
                UserAgent, Method, COUNT(*) as real
          from log
          GROUP by time, Project, LogStore, UserAgent, Method
      )
      GROUP BY Project, LogStore, UserAgent, Method limit 100000000
  )

主页

索引

模块索引

搜索页面