监控器自动暂停
2026-04-02
监控器由于属于长期后台运行的程序,对于一些配置错误、不合理的监控器如果放任执行,可能会对系统资源产生负面影响。
为了避免此类问题,监控器内部存在自我运行状态检测以及自动暂停的处理逻辑。
「暂停」不是「禁用」
监控器自动暂停机制属于 DataFlux Func 内部机制,与用户在观测云中「禁用」监控器不同。
即使监控器处于暂停状态,在观测云中依然处于「开启」状态,不会同步禁用。
一般行为
触发自动暂停时,监控器会立刻抛出错误并停止,并且,在此之后的一段时间内都不会运行
暂停有时间限制的,到时自动解除暂停,用户无需任何操作,用户调整监控器配置后保存也会直接自动解除
暂停没有时间限制的,需要用户调整监控器配置后自动解除。
触发暂停后,常见的日志输出如下:
| Text Only | |
|---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | |
涉及场景
| 场景 | origin_exception_type 字段值 |
暂停时长 | 说明 |
|---|---|---|---|
| 工作空间已锁定 | WorkspaceLocked |
1 小时 | 常见于用户欠费 |
| 工作空间任务调度次数超过限制 | WorkspaceJobOutofQuota |
1 小时 | 常见于免费用户创建过多监控器 |
| 找不到工作空间 | WorkspaceNotFound |
无限期 | 空间已被解散但监控器未被删除 |
| 未指定检测目标 | EmptyTargets |
无限期 | 常见于配置错误 |
| 未指定 DQL | EmptyDQL |
无限期 | 常见于配置错误 |
| 检测 DQL 的 BY 语句涉及高基数字段 | DQLByUUIDFieldDetected |
无限期 | 如 by trace_id 等时触发 |
| 检测所缓存故障对象数量过多 | TooManyFaultInfoCache |
无限期 | 常见于检测的都是一次性对象,如 pod_id |
所有触发暂停的监控器,任务记录中会增加 is_paused:true 和 pause_reason:xxxxx 字段,可以使用如下 DQL 语句查询相关的任务记录
| 相关任务日志查询 DQL | |
|---|---|
1 | |