跳转至

未恢复事件查询


查询前请关注事件相关字段说明 中的df_monitor_checker_event_refdf_fault_iddf_statusdf_fault_status 字段说明。

1. 查询入口

也可使用 OpenAPI 未恢复事件列出POST /api/v1/events/abnormal/list)。该接口按相同 df_monitor_checker_event_ref 的最近一条事件状态不为 ok 列出事件;下文手写 DQL 按 df_fault_status=fault 筛选,请根据所需状态口径选择。

2. 查询语句

以下请求体使用 JSON。请将 timeRange 替换为实际查询时间范围;示例起止时间均为毫秒。disable_sampling=true 表示禁止采样。

方式一:having 方式查询(适用于 Doris 引擎)可直接得到结果

查询结构

{
    "queries": [
        {
            "qtype": "dql",
            "query": {
                "disableMultipleField": false,
                "q": "E::`monitor`:(`__docid`, `df_title`,`df_monitor_checker_event_ref`, `df_fault_id`, `df_status`, `df_fault_status`,`df_fault_start_time`, `df_event_id`) { df_monitor_checker_event_ref = exists() } by `df_monitor_checker_event_ref` having df_fault_status = 'fault' sorder by create_time desc",
                "timeRange": [
                    1724320359294,
                    1724323959294
                ],
                "align_time": true,
                "disable_sampling": true,
                "slimit": 100,
                "tz": "Asia/Shanghai"
            }
        }
    ]
}

其中 slimit=100 表示获取最多 100 个分组。

方式二:非 having 方式查询(非 Doris 引擎)需要过滤筛选

查询结构

{
    "queries": [
        {
            "qtype": "dql",
            "query": {
                "disableMultipleField": false,
                "q": "E::`monitor`:(`__docid`, `df_title`,`df_monitor_checker_event_ref`, `df_fault_id`, `df_status`, `df_fault_status`,`df_fault_start_time`, `df_event_id`, `create_time`) { df_monitor_checker_event_ref = exists() } by `df_monitor_checker_event_ref` sorder by create_time desc",
                "timeRange": [
                    1724320359294,
                    1724323959294
                ],
                "align_time": true,
                "disable_sampling": true,
                "slimit": 1000,
                "tz": "Asia/Shanghai"
            }
        }
    ]
}

其中 slimit=1000 表示获取最多 1000 个触发对象分组,再按下述方式过滤。

对 DQL 查询结果进行过滤

对查询结果中的 df_fault_status 状态进行过滤,过滤出 df_fault_status=fault 的事件。此时这些数据就是未恢复事件列表

最终输出

根据 time 字段对数据进行降序排列得出最终的未恢复事件列表。

3. 如何确认当前工作空间事件的存储引擎类型

通过接口获取工作空间存储信息

接口响应结果中 datastore 存储了当前工作空间内所有基础数据的存储引擎类型(不包括外部索引)。datastorekeyevent 的值为 doris 就表明事件数据是 doris 存储引擎。

以下为节选的响应示例:

{
    "code": 200,
    "content": {
        "id": 1,
        "uuid": "wksp_xxxxx",
        "name": "【Doris】工作空间名",
        "versionType": "pay",
        "datastore": {
            "backup_log": "doris",
            "custom_object": "doris",
            "keyevent": "doris",
            "logging": "doris",
            "metric": "guancedb",
            "network": "doris",
            "object": "doris",
            "object_history": "doris",
            "profiling": "doris",
            "rum": "doris",
            "security": "doris",
            "tracing": "doris"
        }
    },
    "errorCode": "",
    "message": "",
    "success": true,
    "traceId": "2956247345653191101"
}

文档评价

文档内容是否对您有帮助?