检测规则
编辑检测规则编辑
本主题涵盖了在创建或管理 检测规则 时遇到的常见故障排除问题。
机器学习规则编辑
机器学习规则失败,且所需的机器学习作业已停止
如果机器学习规则失败,请检查所需的机器学习作业是否正在运行,并启动已停止的任何作业。
-
转到 规则 → 检测规则 (SIEM),然后选择机器学习规则。所需的机器学习作业及其状态列在 定义 部分中。
- 如果所需的机器学习作业没有运行,请打开它旁边的 运行作业 切换按钮。
- 重新运行机器学习检测规则。
指标匹配规则编辑
规则因警报数量过多而失败
如果您收到以下规则失败消息:"批量索引信号失败: [父级] 数据过大"
,这表示警报有效负载过大,无法处理。
这可能是由指标数据错误、规则配置错误或事件匹配过多导致的。查看您的指标数据或规则查询。如果没有任何明显错误配置,请尝试针对原始数据的子集执行规则,并继续诊断。
指标匹配规则超时
如果您收到以下规则失败消息:"规则执行期间发生错误:消息:“请求在 90000 毫秒后超时”"
,这表示查询阶段超时。尝试缩短时间范围或将查询中定义的数据分成多个规则。
指标匹配规则因 maxClauseCount
限制过低而失败
如果您收到以下规则失败消息:批量索引信号失败:索引:".index-name" 原因:"maxClauseCount 设置为 1024" 类型:"too_many_clauses"
,这表示查询树可以包含的总子句数的限制过低。要更新您的最大子句数,请 增加 Elasticsearch JVM 堆内存的大小。1 GB 或更大的 Elasticsearch JVM 堆内存就足够了。
整体缓慢
如果您发现规则延迟,请查看上述建议以进行故障排除,并考虑限制同时运行的规则数量,因为这可能会导致 Kibana 中出现明显的性能影响。
规则异常编辑
没有自动完成建议
创建检测规则异常时,如果值不存在于当前页面的时间范围内,则自动完成可能不会在 值 字段中提供建议。
您可以通过扩展时间范围或配置 Kibana 的自动完成功能来解决此问题,以便从完整的数据集而不是当前时间范围内获取建议。转到 Kibana → 堆栈管理 → 高级设置,然后关闭 autocomplete:useTimeRange
。
如果数据集特别大,关闭 autocomplete:useTimeRange
可能会导致性能问题。
有关类型冲突和未映射字段的警告
对于在多个索引中具有 类型冲突 或 未映射 的字段,会出现一个警告图标 () 和消息。您可以通过单击警告消息来详细了解冲突。
一个字段可以同时具有类型冲突和在指定索引中未映射。
具有冲突类型的字段编辑
类型冲突发生在字段在多个索引中映射到不同的类型时。要解决此问题,您可以创建具有匹配字段类型映射的新索引,并 重新索引您的数据。否则,请使用有关字段类型映射的信息,以确保在定义异常条件时输入兼容的字段值。
在以下示例中,所选字段已在五个索引中定义为不同的类型。
未映射的字段编辑
未映射的字段在索引的映射定义中未定义。使用未映射的字段来定义异常可能会阻止它按预期工作,并导致误报或意外警报。要修复未映射的字段,请 将它们添加到您的索引映射定义中。
在以下示例中,所选字段在两个索引中未映射。