【 使用环境 】生产环境
【 OB or 其他组件 】 OCP
【 使用版本 】4.3.6
【问题描述】配置告警的Body模板中,无alarm_duration持续时长(秒)变量值,在标签说明中看到是有的

【复现路径】问题出现前后相关操作
【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!
【 使用环境 】生产环境
【 OB or 其他组件 】 OCP
【 使用版本 】4.3.6
【问题描述】配置告警的Body模板中,无alarm_duration持续时长(秒)变量值,在标签说明中看到是有的

【复现路径】问题出现前后相关操作
【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!
在当前提供的文档片段中,未找到关于告警Body模板中包含alarm_duration持续时长变量的具体说明。不过,告警检测规则中确实存在持续时长的概念,通常称为duration,用于确保告警的触发不是由于偶发的一次异常导致的,而是持续异常的结果。然而,这个概念在告警Body模板中似乎并未直接映射为alarm_duration变量。
建议检查告警模板变量文档,确认是否有其他变量可以表示告警的持续时长。另外,如果您的OCP版本是4.3.6,可能需要查阅官方最新文档或联系技术支持获取更详细的变量说明。
详情请参考:

这个 Body模板 在哪看到的?
这是根据第三方告警平台模板写的json格式的告警内容。
变量名是第三方告警平台的,值是OCP平台的
你是说在第三方告警平台接入OCP后获取不到 alarm_duration和alarm_last_interval ?
是OCP没有alarm_duration和alarm_last_interval 这两个变量
你使用这个变量 ${duration} 试下

还是一样的
是这样的,所以我在下面的“告警消息模板”中也加了这个变量,但是貌似告警内容只跟“Body模板”中的内容绑定
这个是钉钉这些方式的吧,HTTP方式发送的告警必须填Body模板,Body模板里面没有这两个变量
URL模板:http://***:2828
Header模板:Content-Type:application/json
Body模板、告警消息模板、告警恢复消息模板:
{
“content”:" ${alarm_description} “,
“originId”:”${alarm_id}",
“duration”:"${alarm_duration}",
“recoveryoriginId”:"${alarm_id}",
“severity”:"${alarm_level}",
“eventTime”:"${alarm_active_at}",
“object”:"${alarm_target)",
“location”:“OCEANBASE云平台”,
“title”:"${alarm_name}",
“host”:"${host_ip}",
“hostname”:"${host_name}",
“objectType”:"${alarm_scope}",
“metricName”:"${metrics}",
“metricvalue”:"${values}",
“status”:"${alarm_status}
}
试了下,发送测试告警会给一个默认值60,但是真正的告警还是无法识别
未启用推送来源时,告警消息的值都是默认的,例如:
启用推送来源后,OCP会去读真实的告警消息,
告警通道这样配置(msgtype为markdown),是可以读取到持续时间的,不需要配置在 告警消息模板中,例如:
如果msgtype为text类型则只支持 content 字段,也是可以读取到持续时间变量的,并且建议直接配置为"content": “${message}”,${message}就是告警消息模板的内容
{
"msgtype": "text",
"text": {
"content": "内容"
}
}
你是否在OCP上启用了推送来源?是通过http通道将告警推送到哪里?