回复:Flink Prometheus Connector问题
Hi 参考官网,https://nightlies.apache.org/flink/flink-docs-release-1.18/docs/deployment/metric_reporters/#prometheuspushgateway Best JasonLee 回复的原邮件 | 发件人 | casel.chen | | 发送日期 | 2024年02月23日 17:35 | | 收件人 | user-zh@flink.apache.org | | 主题 | Flink Prometheus Connector问题 | 场景:使用Flink实时生成指标写入Prometheus进行监控告警 网上搜索到 https://github.com/apache/flink-connector-prometheus 项目,但内容是空的 另外找到FLIP-312 是关于flink prometheus connector的,https://cwiki.apache.org/confluence/display/FLINK/FLIP-312%3A+Prometheus+Sink+Connector 请问Flink官方有没有出flink prometheus connector? 如果现在要实时写入prometheus的话,推荐的方式是什么?谢谢!
回复:flink作业延迟时效指标
Hi 你提到的所有的监控都是可以通过 metric 来监控报警的,至于你提到的 LatencyMarker 因为它不参与算子内部的计算逻辑的时间,所以这个 metric 并不是准确的,但是如果任务有反压的情况下 LatencyMarker 也会被阻塞,所以大体上还是可以反应出任务的延迟情况,如果想要准确的计算出端到端的延迟,可以在 消费 kafka 的时候获取一个 start time 时间戳 在 sink 的时候获取一个 end time 时间戳,然后自定义一个 metric 把这个结果上报 基于这个 metric 做端到端的延迟监控。 Best JasonLee 回复的原邮件 | 发件人 | casel.chen | | 发送日期 | 2023年06月8日 16:39 | | 收件人 | user-zh@flink.apache.org | | 主题 | flink作业延迟时效指标 | 我想知道当前flink作业延迟了多久现在能通过什么指标可以获取到吗?想通过设置作业延迟告警来反馈作业健康状况,是否产生背压,是否需要增加资源等。 以mysql表实时同步到doris表为例:mysql binlog -> kafka -> flink -> doris 延迟指标包括: 1. 业务延迟:业务延迟=当前系统时间 - 当前系统处理的最后一条数据的事件时间(Event time) 例如:kafka消息写入doris的时间 - kafka消息数据本身产生时间(例如更新mysql记录的时间) 2. 数据滞留延迟:数据滞留时间=数据进入实时计算的时间 - 数据事件时间(Event time) 例如:flink消费到kafka消息时间 - 消费到的kafka消息数据本身产生时间(例如更新mysql记录的时间) 当前我们是用kafka消费组积压告警来替代的,但这个数据不准,一是因为flink checkpoint才会更新offset,二是因为生产流量在不同时段是不同的,在流量低的时候告警不及时。 查了官网有一个LatencyMarker可以开启使用,请问这个开启后要怎么观察延迟呢?这个metric需要上报到prometheus才可以读到吗? 我们遇到另一个问题是使用flink sql提交作业生成的metric名称很长,因为operatorId是根据sql内容来生成的,所以动不动就把prometheus给打爆了,这个有什么办法解决么?
回复:打印不同流怎么进行区分
Hi Print 方法是可以传入一个参数的,用来标识某个流,比如 print(“a”); print(“b"); Best JasonLee 回复的原邮件 | 发件人 | 小昌同学 | | 发送日期 | 2023年04月14日 09:46 | | 收件人 | user-zh | | 主题 | 打印不同流怎么进行区分 | 你好,请问一下再一个程序中,有流与流之间的转换,比如说流A转换为流B,那我想看看流A,也想看看流B,请问我该怎么实现,直接print的话,再控制面板会乱掉 | | 小昌同学 | | ccc0606fight...@163.com |
回复:监控flink的prometheus经常OOM
Hi 这个是可以配置的,可以参考官网 filter.includes[1] 来过滤你想要的 metrics。 [1]https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/deployment/metric_reporters/#filter-includes Best JasonLee 回复的原邮件 | 发件人 | casel.chen | | 发送日期 | 2023年03月22日 12:08 | | 收件人 | user-zh@flink.apache.org | | 主题 | 监控flink的prometheus经常OOM | 我们通过pushgateway上报metrics到prometheus,设置的上报周期是30秒,整个实时平台有200多个作业,启了一台50GB的prometheus还是撑不住,指标保留1天,设置了指标在内存中驻留2小时后写入磁盘。最大的一个metric已经有37万条。请问有什么解决办法么?能选择哪些指标进行上报不?
回复:咨询yarn session 集群启动后在不重启的情况下如何更新一个jar包
Hi wdmcode 看上去 per-job 或者 application 模式更适合你,session 模式的话是需要重启集群才能识别到新添加的 connector。 Best JasonLee 回复的原邮件 | 发件人 | wdmcode | | 发送日期 | 2023年03月14日 17:59 | | 收件人 | user-zh | | 主题 | 咨询yarn session 集群启动后在不重启的情况下如何更新一个jar包 | hi all 我在yarn集群使用yarn session方式启动了一个flink集群。集群中有一些自定义的Connector。自定义的Connector Jar包放在本地的lib目录。 我如何在不重启yarn session集群的情况下更新一个Connector呢。如果重启yarn session集群会导致所有任务都要重启。但是更新一个Connector只会影响部分任务。
Re:flink sql
Hi 可以通过设置 pipeline.operator-chaining = false 来实现。 Best JasonLee Replied Message | From | 小昌同学 | | Date | 03/3/2023 15:50 | | To | user-zh | | Subject | flink sql | 各位大佬,请教一下如何使用flink sql实现DataStreaming的disableOperatorChaining功能 | | 小昌同学 | | ccc0606fight...@163.com |
Re: Blink
使用row number设置成blink的planner就行了 依赖也只用加blink的 | | 17610775726 | | 邮箱:17610775...@163.com | Signature is customized by Netease Mail Master On 06/29/2020 17:19, xuhaiLong wrote: hello,请教下 "org.apache.flink" %% "flink-table-api-scala-bridge" % "1.10.1", "org.apache.flink" %% "flink-table-planner-blink" % "1.10.1" % "provided", "org.apache.flink" % "flink-table" % "1.10.1" % "provided", 我在项目中添加了这三个依赖,在idea 中 运行的时候出现异常 `Could not instantiate the executor. Makesure a planner module is on the classpath` 而我添加上这个依赖 `"org.apache.flink" %% "flink-table-planner" % "1.10.1" % "provided",` 就可以了 但是我要使用 blink 中的ROW_NUMBER() 函数,是我的引入错了吗? 猜测是我没有正确引入 blink ?