Skip to content

关于本页

本页介绍更夫所基于的开源内核 Keep 的通用能力。更夫在其上提供国内化增强:钉钉/企业微信/飞书通知、国产大模型接入、LDAP 认证与值班管理。部署与上手请看快速上手。

TIP

您可以将预设想象成警报的"Slack 频道"——一个逻辑容器,仅关注对您重要的警报。

随着 Keep 引入 CEL(通用表达式语言)进行警报过滤,用户获得了定义更复杂和精确的警报过滤逻辑的灵活性。

此功能允许使用 CEL 表达式创建可自定义过滤器,以基于特定条件细化警报可见性。

工作原理 ​

  1. CEL 表达式创建:用户编写定义警报过滤条件的 CEL 表达式。
  2. 预设定义:这些表达式可以保存为预设,以便轻松应用于不同的警报流。
  3. 警报过滤:应用时,CEL 表达式根据定义的条件评估每个警报,实时过滤警报流。

创建 CEL 表达式 ​

在 Keep 中创建 CEL 表达式有两种方式

手动创建 CEL 查询 ​

使用 CEL 语言定义 文档更好地了解通用表达式语言的能力 以下是如何查询所有来自 Sentry 的警报的示例

如果您输入的 CEL 语法无效,将显示错误消息(在本例中,我们使用了无效的 '' 而不是 ""):

从 SQL 查询导入 ​

  1. 点击"从 SQL 导入"按钮
  1. 编写/粘贴您的 SQL 查询并点击"转换为 CEL"按钮

这将生成并应用一个有效的 CEL 查询:

保存预设 ​

您可以使用"将当前过滤器保存为视图"按钮将 CEL 查询保存为预设

您可以命名您的预设并配置它是"私有"(只有创建用户会看到此预设)还是账户范围内可用。

预设将被创建并可供您快速导航和使用

实际示例 ​

例如,用户可以创建 CEL 表达式按严重程度和来源过滤警报,例如 severity == 'critical' && service.contains('database'),确保仅显示数据库服务的关键警报。

最佳实践 ​

  • 表达式的特异性:精心制作精确针对所需警报的表达式,以避免过滤掉相关警报。
  • 预设管理:定期审查和更新您的预设以符合不断变化的警报需求。
  • 测试表达式:在应用之前测试 CEL 表达式以确保它们正确过滤了所需的警报。

实用链接 ​

基于 MIT 协议开源的 Keep · 由更夫社区维护