开发者社区> 问答> 正文

如何在Knative 上实现监控告警?

如何在Knative 上实现监控告警?

展开
收起
小天使爱美 2020-03-31 16:00:36 659 0
1 条回答
写回答
取消 提交回答
  • Knative 中可以通过日志服务收集日志信息,同时可以根据日志信息,在日志服务中快速方便的设置监控告警。

    前提条件 您已经部署 Knative Service 服务。参考部署 Serving Hello World 应用。 您已连接到Kubernetes集群的Master节点,参见通过kubectl连接Kubernetes集群。 操作步骤 设置查询分析。 请参见实时分析简介。 登录日志服务管理控制台,单击目标Project名称,在日志库页签的Logstore列表中,可以看到步骤1创建的Logstore。 单击目标Logstore名称。 输入如下命令并单击查询/分析。 如果您监控的原则是根据ERROR出现的次数,则设计统计 ERROR 的SQL语句:查询分析 * | select 'ERROR' , count(1) as total group by 'ERROR' 告警设置。 请参见设置告警。 单击右上角的另存为告警,从右侧滑出侧边栏创建告警。 创建告警 说明 其中告警触发条件输入判断告警是否触发的条件表达式,可以参考告警条件表达式语法,我们这里设置查询区间为 1 分钟,执行间隔为 1 分钟,触发条件为 total > 3, 表示间隔 1 分钟检查,如果 1 分钟内出现 3 次 ERROR 信息,则触发告警。 填写告警配置信息,完成后单击下一步。 配置项 说明 告警名称 告警的名称。名称长度为1~64个字符。 添加仪表盘 添加一个仪表盘。 图表名称 图表的名称。名称长度为1~64个字符。 查询语句 SQL查询语句。 查询区间 查询区间为服务端每次执行查询时,读取的数据时间范围,支持相对时间与绝对时间。例如,执行时间点为14:30:06,设置查询区间为15分钟(相对),则查询区间为 14:15:06- 14:30:06;设置查询区间为15分钟(绝对),则查询区间为:14:15:00- 14:30:00。 检查频率 服务端每次执行告警检查的时间。 说明 目前服务端每次告警规则检查只会采样处理时间区间开始的前100条数据。 触发条件 判断告警是否触发的条件表达式,满足该条件时会根据执行间隔和通知间隔发送告警通知。 例如,您可以设置为pv%100 > 0 && uv > 0。

    说明 触发条件中,通过$编号区分不同的关联图表,例如$0表示编号为0的图表。 如何查看图表编号?

    触发通知阈值 累计触发次数达到该阈值时根据通知间隔发送告警。不满足触发条件时不计入统计。 默认触发通知阈值为1,即满足一次触发条件即可检查通知间隔。

    通过配置触发通知阈值可以实现多次触发、一次通知。例如,配置触发通知阈值为100,则累计触发次数达到100次时检查通知间隔。如果同时满足触发通知阈值和通知间隔,则发送通知。发送通知之后,累计次数会清零。如果因网络异常等原因执行检查失败,不计入累计次数。 通知间隔 两次告警通知之间的时间间隔。

    如果某次执行满足了触发条件,而且累计的触发次数已经达到触发通知阈值,且距离上次发送通知已经达到了通知间隔,则发送通知。如设置通知间隔为5分钟,则5分钟内至多收到一次通知。默认无间隔。

    说明 通过配置触发通知阈值和通知间隔可以实现告警抑制的功能,防止收到过多的告警信息。 设置告警通知,完成后单击提交。 设置告警通知 通知方式 通知方式 短信 短信形式发送告警通知,需要指定手机号码和发送内容。

    多个手机号码之间通过逗号(,)分隔。发送内容为短信通知的内容,支持使用模板变量,长度为1~100个字符。

    语音 语音形式发送告警通知,需要指定手机号码和发送内容。

    多个手机号码之间通过逗号(,)分隔。发送内容为语音通知的内容,支持使用模板变量,长度为1~100个字符。

    邮件 邮件形式发送告警通知,需要指定邮箱地址为收件人,并指定发送内容。

    多个邮箱地址之间通过逗号(,)分隔。发送内容为邮件通知的内容,支持使用模板变量,长度为1~500个字符。

    钉钉 钉钉机器人消息形式发送告警通知,当触发告警时,告警通知会以钉钉机器人消息的形式发送到钉钉群中。需要指定请求地址和发送内容。

    发送内容为钉钉机器人消息的内容,支持使用模板变量,长度为1~500个字符。

    如何设置钉钉机器人、获取请求地址,请查看设置告警。

    说明 每个机器人每分钟最多发送20条。 WebHook 当触发告警时,告警通知会以指定形式发送到自定义WebHook地址中。需要指定请求地址、请求方法和发送内容。

    请求方法可以设置为GET、PUT、POST、DELETE和OPTIONS。发送内容为通知的内容,支持使用模板变量,长度为1~500个字符。

    通知中心 通过阿里云通知中心中预设的通知方式向联系人发送告警通知。需要指定发送内容。发送内容为通知消息的内容,支持使用模板变量,长度为1~500个字符。

    添加通知中心告警方式,需要在通知中心中设置联系人及通知方式。

    执行如下命令,访问 Hello World 示例服务。 此时会触发告警通知。 $ curl -H "Host: helloworld-go.default.example.com" http://112.124.XX.XX Hello Knative! 如果是设置的邮件通知,告警信息如下图所示。 邮件通知 总结 通过结合日志服务的监控告警方式,在 Knative 中可以第一时间监控到部署应用的异常状态并及时通知给运维、开发人员进行处理,保证服务持续运行。

    2020-03-31 20:12:55
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
ARMS打造应用全栈监控 立即下载
ARMS 智能告警套件最佳实践 立即下载
Kubernetes日志采集与分析 立即下载