开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

Flink on YARN常见问题之: 客户端疑难问题排查思路是什么?

Flink on YARN常见问题之: 客户端疑难问题排查思路是什么?

展开
收起
Lee_tianbai 2020-12-30 13:25:03 803 0
1 条回答
写回答
取消 提交回答
  • 当客户端日志无法正常定位时,可以修改 log4j 配置文件将日志级别由 INFO 改 为 DEBUG 后重新运行,看是否有 DEBUG 日志可以帮助排查问题。对于一些没有 日志或日志信息不完整的问题,可能需要开展代码级调试,修改源码重新打包替换 的方式太过繁琐,推荐使用 Java 字节码注入工具 Byteman(详细语法说明请参考: Byteman Document),使用示例: (1) 编写调试脚本,例如打印 Flink 实际使用的 Client 类,以下脚本表示在 CliFrontend#getActiveCustomCommandLine 函数退出时打印其返回值;

    RULE test
    CLASS org.apache.flink.client.cli.CliFrontend
    METHOD getActiveCustomCommandLine
    AT EXIT
    IF TRUE
    DO traceln("------->CliFrontend#getActiveCustomCommandLine return: "+$!);
    ENDRULE
    

    (2) 设置环境变量,使用 byteman javaagent:

    export BYTEMAN_HOME=/path/to/byte-home
    export TRACE_SCRIPT=/path/to/script
    export JVM_ARGS=”-javaagent:${BYTEMAN_HOME}/lib/byteman.jar=script:${TRACE_
    SCRIPT}”
    

    (3) 运行测试命令 bin/flink run -m yarn-cluster -p 1 ./examples/streaming/WordCount.jar ,控制台将输出内容:

    ------->CliFrontend#getActiveCustomCommandLine return: org.apache.flink.yarn.cli.
    FlinkYarnSessionCli@25ce9dc4
    
    2020-12-30 13:26:58
    赞同 展开评论 打赏

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    深度学习+大数据 TensorFlow on Yarn 立即下载
    Docker on Yarn 微服务实践 立即下载
    深度学习+大数据-TensorFlow on Yarn 立即下载