当前位置: 首页 > news >正文

【Flink】Flink任务缺失Jobmanager日志的问题排查

Flink任务缺失Jobmanager日志的问题排查

问题不是大问题,不是什么代码级别的高深问题,也没有影响任务运行,纯粹因为人员粗心导致,记录一下排查的过程。

问题描述

一个生产环境的奇怪问题,环境是flink1.15.0 on yarn3.2.2的,研发人员反馈业务正常运行,但是最近变更算法替换新包的时候有业务异常,然后需要排查日志的时候发现没有日志,打开Jobmanager日志就会一直转圈:

image-20231115114655046

排查过程

页面因为一直转圈,就看了下控制台请求,报错是404,找不到对应的日志文件

image-20231115114855562

image-20231115114911461

检查了一下ApplicationMaster的启动日志,看到在容器启动的时候是有传入相关的log.file参数的,所以基本排除提交命令这块的问题:

echo "Launching container"
exec /bin/bash -c "$JAVA_HOME/bin/java -Xmx3462817376 -Xms3462817376 -XX:MaxMetaspaceSize=268435456 -Dlog.file="/data3/yarn/logs/userlogs/application_1667318330721_0144/container_e37_1667318330721_0144_03_000001/jobmanager.log" -Dlog4j.configuration=file:log4j.properties -Dlog4j.configurationFile=file:log4j.properties org.apache.flink.yarn.entrypoint.YarnApplicationClusterEntryPoint -D jobmanager.memory.off-heap.size=134217728b -D jobmanager.memory.jvm-overhead.min=429496736b -D jobmanager.memory.jvm-metaspace.size=268435456b -D jobmanager.memory.heap.size=3462817376b -D jobmanager.memory.jvm-overhead.max=429496736b 1> /data3/yarn/logs/userlogs/application_1667318330721_0144/container_e37_1667318330721_0144_03_000001/jobmanager.out 2> /data3/yarn/logs/userlogs/application_1667318330721_0144/container_e37_1667318330721_0144_03_000001/jobmanager.err"

image-20231115114230472

因为这个环境早前有把flink从1.13.2升级到1.15.0的情况,又验证了一下版本是不是有问题,使用1.13.2提交一个example任务:

/usr/local/flink/bin/flink run-application -t yarn-application     -Dtaskmanager.numberOfTaskSlots=1    -Djobmanager.memory.process.size=4096m     -Dtaskmanager.memory.process.size=6144m     -Dyarn.provided.lib.dirs="viewfs://nsX/ns7/user/flink_lib" -Dyarn.application.name="Flink-Test"    -Dyarn.flink-dist-jar="viewfs://nsX/ns7/user/flink_lib/flink-dist-1.13.2.jar"  SocketWindowWordCount.jar  --hostname localhost --port 22

你还别说真就打出日志了:

b2d69cf3-09a8-4ebe-80fb-b7f675c17e00

对比了一下AM的的web日志页,发现1.15启动的缺少jobmanager.log文件

image-20231115114243742

image-20231115114359060

依次检查了log4j的相关配置,新旧版本也没有区别,又看了一眼提交命令,提交命令里有一个指定依赖目录的参数yarn.provided.lib.dirs,瞅一眼看看是不是有问题

企业微信截图_17000195313617

好嘛,看着1.13.2的依赖目录和1.15.0比差了几个log4j的包,把相应的包补齐到1.15.0的目录里,再提交任务,一切正常:

image-20231115140549733

http://www.lryc.cn/news/235097.html

相关文章:

  • 教程:使用 Keras 优化神经网络
  • 什么是PWA(Progressive Web App)?它有哪些特点和优势?
  • 深入理解MongoDB的CRUD操作
  • 使用量子玻尔兹曼机推进机器学习:新范式
  • 优化|优化求解器自动调参
  • vite vue3配置eslint和prettier以及sass
  • C语言第入门——第十六课
  • IntelliJ IDEA 快捷键 Windows 版本
  • 重生之我必去大厂java开发
  • 2023年中职“网络安全“—Web 渗透测试②
  • 【整顿C盘】pycharm、chrome等软件,缓存移动
  • C# using语句使用介绍
  • leetcode (力扣) 201. 数字范围按位与 (位运算)
  • Flutter笔记: 在Flutter应用中使用SQLite数据库
  • OpenAI GPT5计划泄露
  • 【面试经典150 | 数学】Pow(x, n)
  • 封装比较好的登录页面
  • 如何使用Flask request对象处理请求
  • 快速搜索多个word、excel等文件中内容
  • Minio安装
  • Spring初识
  • 2023全新付费进群系统源码 带定位完整版 附教程
  • C# LINQ使用介绍
  • 【c++】——类和对象(中)——实现完整的日期类(优化)万字详细解疑答惑
  • 开源与闭源:大模型时代的技术交融与商业平衡
  • C#开发的OpenRA游戏之属性BodyOrientation(6)
  • Linux shell编程学习笔记27:tputs
  • 【计算机网络笔记】IPv6简介
  • c语言-数据结构-堆
  • ROS基础—关于参数服务器的操作