springboot整合flink(三)

上个章节,遇到的springboot整合flink,addSource()出现的序列化问题。仔细看了源码,但是解决不了根本问题。但是找到了一个折中的解决办法,如下:

一、通过maven父子项目来解决

  1. 主项目依赖全用flink相关的配置
  2. 子项目使用springboot来快速开发提供主项目数据

遇到的问题

1.logback日志报错

java.lang.IllegalStateException: Logback configuration error detected
首先,想到的是jar包冲突,pom里加了exclude。但是发现加的有点多,放弃了使用logback,顺势使用了sl4j-api的jar,因为排查jar包发现,flink似乎也有sl4j-api的jar
添加的三个依赖,如下:

   	<dependency>
		<groupId>org.apache.logging.log4jgroupId>
		<artifactId>log4j-coreartifactId>
		<version>2.9.1version>
	 dependency>
	 <dependency>
		<groupId>org.apache.logging.log4jgroupId>
		<artifactId>log4j-apiartifactId>
		<version>2.9.1version>
	dependency>
	<dependency>
	  <groupId>org.slf4jgroupId>
	  <artifactId>slf4j-simpleartifactId>
	  <version>1.7.25version>
	dependency>
log4j.rootLogger=DEBUG,console,dailyFile,im
log4j.additivity.org.apache=true
# 控制台(console)
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Threshold=DEBUG
log4j.appender.console.ImmediateFlush=true
log4j.appender.console.Target=System.err
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=[%-5p] %d(%r) --> [%t] %l: %m %x %n

############# 日志文件(logFile)
log4j.appender.logFile=org.apache.log4j.FileAppender
log4j.appender.logFile.Threshold=DEBUG
log4j.appender.logFile.ImmediateFlush=true
log4j.appender.logFile.Append=true
log4j.appender.logFile.File=D:/logs/log.log4j
log4j.appender.logFile.layout=org.apache.log4j.PatternLayout
log4j.appender.logFile.layout.ConversionPattern=[%-5p] %d(%r) --> [%t] %l: %m %x %n

2.解决控制台日志全红,找不到日志文件问题

你可能感兴趣的:(flink系列教程,flink,springboot,log)