有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

Prometheus 介绍

Prometheus 是一个非常灵活的时序数据库,通常用于监控数据的存储、计算和告警。
用户可以将 Flink 内置的 各项指标,连同自己定义的业务指标,统一通过 Prometheus Pushgateway 的方式,推送到自建或者腾讯云 Prometheus 服务端,随后即可对 Grafana 面板进行分组、聚合和数据展示。
流计算 Oceanus 建议用户使用腾讯云监控提供的 Prometheus 服务,以免去部署、运维开销;同时它还支持腾讯云的 通知模板,可以通过短信、电话、邮件、企业微信机器人等方式,将告警信息轻松触达不同的接收方。

Oceanus Grafana 面板导入方法

1. 下载 Oceanus Grafana Dashboard 模板并解压到本地。点此下载 Dashboard
2. 在 Prometheus 的 Grafana 面板上,鼠标移动到左边栏,选择

> Manage


3. 创建一个名为 Oceanus 新文件夹。




4. 再次进入 Dashboard 管理页面,单击右上角的 Import逐个将解压后的 json 文件内容粘贴进来。
注意
请按照下文指引,逐一导入每个 JSON 文件。
不要修改面板的 UID(即不要单击 Change uid),以免面板之间的跳转链接失效。







5. 导入完毕后,检查 Oceanus 目录是否包含了如下面板:



作业启用 Prometheus 监控指标上报

注意
每个作业需要单独配置 Prometheus 上报。
修改每个作业的配置后,必须单击发布运行,待作业重启后才会正式上报监控数据。
1. 流计算 Oceanus 控制台,单击需要添加监控的作业,进入开发调试面板。


2. 单击作业参数,在高级参数中新增以下内容:
注意
${ } 的变量需替换为实际值。
metrics.reporters: promgateway
metrics.reporter.promgateway.host: ${Prometheus PushGateway 的 IP 地址}
metrics.reporter.promgateway.port: ${Prometheus PushGateway 的端口}
如果使用腾讯云监控的 Prometheus 服务,还需要额外配置鉴权信息(Password 即控制台看到的 Token):
metrics.reporter.promgateway.needBasicAuth: true
metrics.reporter.promgateway.password: ${Prometheus 访问密码}
示例图:


3. 以新的配置发布并启动作业,稍等1分钟(上报周期),随后即可查看面板上的数据。


4. 还可以编辑 Prometheus 面板,以满足个性化的监控需求。



告警配置

如果希望对某项指标进行告警,我们以 Checkpoint 失败数为例,在腾讯云 Prometheus 监控 上展示配置告警策略的方法。
1. 在 Dashboard 选择需要配置告警的指标项,例如 Checkpoint 失败数


2. 进入编辑界面,查看告警指标的查询条件。




3. 进入 Prometheus 的告警配置界面,新增一条规则。
注意
在规则 PromQL 中,{ } 中不要包含上图中的 Grafana 变量,例如 instance_id="$InstanceId" 等。如果需要按条件筛选,请在 { } 中填入具体值,例如 instance_id="cql-abcd0012"
数据源中的标签(例如 job_id),可以在告警对象和告警消息中引用,例如 {{ $labels.job_id }},而查询语句的值可以用 {{ $value }} 表示。



4. 当告警触发、恢复时,配置的告警渠道就会收到通知。此外,通知模板 中还支持短信、电话、邮件等其他告警渠道。
注意
这里演示企业微信回调推送到群机器人(Bot)。