其他
手把手教你获取、编译和调试Flink的源代码
导读:本文介绍如何导入Flink源代码,对源代码进行编译、构建及调试。
启动IntelliJ IDEA 并单击欢迎窗口右上角的Open按钮。 在弹出窗口中选择Flink源代码的根目录。 选择Import project from external model和maven项,并单击Next按钮。 选择SDK。如果之前没有配置过SDK,单击“+”图标, 并点击JDK,选择你的JDK的目录,然后单击OK按钮。 单击Next 按钮完成Flink源代码的导入。 在导入的项目右侧单击Maven→Generate Sources and Update Folders的图标,将Flink Library 构建到Maven 本地仓库。 构建项目(单击Build→Make Project图标)。
在IntelliJ IDEA 的Plugins Marketplace中查找并安装 CheckStyle-IDEA 插件。 依次选择Settings→Tools→Checkstyle并设置checkstyle。 将 Scan Scope设置为Only Java sources(including tests)。 在Checkstyle version下拉列表中选择checkstyle版本,并单击Apply按钮。(注:官方推荐版本为8.12。) 在Configuration File面板中单击“+”图标添加新配置: 在弹窗中将Description设置为Flink; 选中 Use a local Checkstyle file,并选择Flink源代码目录下的 tools/maven/checkstyle.xml文件; 勾选Store relative to project location 选项,单击Next按钮; 将checkstyle.suppressions.file的属性设置值为 suppressions.xml,单击Next按钮即完成配置。 勾选刚刚添加的新配置Flink,以将其设置为活跃的配置,依次单击Apply 和OK按钮,即完成Java 部分CheckStyle的配置。若源代码违反CheckStyle规范,CheckStyle会给出警告。
$ mvn clean install -DskipTests
$ mvn clean install -DskipTests
$ cd flink-dist
$ mvn clean install
$ mvn clean install -DskipTests -Dfast
$ mvn clean install -DskipTests -Dhadoop.version=3.2.2 -Dinclude-hadoop
修改日志等级
# 设置全局的日志等级
log4j.rootLogger=DEBUG, file
# 也可以按需改变Flink、Akka、Hadoop、Kafka和ZooKeeper包以及其他包的日志等级
log4j.logger.org.apache.flink=INFO
log4j.logger.akka=INFO
log4j.logger.org.apache.kafka=INFO
log4j.logger.org.apache.hadoop=INFO
log4j.logger.org.apache.zookeeper=INFO
# Log all infos in the given file
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.file=${log.file}
log4j.appender.file.append=false
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS}
%-5p %-60c %x - %m%n
# Suppress the irrelevant (wrong) warnings from the Netty channel handler
log4j.logger.org.apache.flink.shaded.akka.org.jboss.netty.channel
.DefaultChannelPipeline=ERROR, file
修改配置来开启Java远程调试
env.java.opts: -agentlib:jdwp=transport=dt_socket,server=y,suspend=n, address=5005
本文摘编自《Flink技术内幕:架构设计与实现原理》,经出版方授权发布。(ISBN:9787111696292)
推荐语:Flink源码维护者阿里、蚂蚁、滴滴经验总结,剖析Flink机制,指导性能调优、可用性保障、效能优化、二次开发。
划重点👇
干货直达👇
在公众号对话框输入以下关键词查看更多优质内容!
读书 | 书单 | 干货 | 讲明白 | 神操作 | 手把手大数据 | 云计算 | 数据库 | Python | 爬虫 | 可视化AI | 人工智能 | 机器学习 | 深度学习 | NLP5G | 中台 | 用户画像 | 数学 | 算法 | 数字孪生
据统计,99%的大咖都关注了这个公众号👇