Flink 本地运行日志配置
2020-06-28 本文已影响0人
lei_charles
-
方法一: 使用 log4j.properties
在 src/main/resources 中添加 log4j.properties 文件
################################################################################ # Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance # with the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. ################################################################################ # This affects logging for both user code and Flink log4j.rootLogger=INFO, console # Uncomment this if you want to _only_ change Flink's logging log4j.logger.org.apache.flink=WARN # The following lines keep the log level of common libraries/connectors on # log level INFO. The root logger does not override this. You have to manually # change the log levels here. log4j.logger.akka=WARN log4j.logger.org.apache.kafka=INFO log4j.logger.org.apache.hadoop=WARN log4j.logger.org.apache.zookeeper=WARN # Log all infos to the console log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.layout=org.apache.log4j.PatternLayout log4j.appender.console.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, console
-
方法二: 使用 logback.xml
在 src/main/resources 中添加 logback.xml 文件
<!-- ~ Licensed to the Apache Software Foundation (ASF) under one ~ or more contributor license agreements. See the NOTICE file ~ distributed with this work for additional information ~ regarding copyright ownership. The ASF licenses this file ~ to you under the Apache License, Version 2.0 (the ~ "License"); you may not use this file except in compliance ~ with the License. You may obtain a copy of the License at ~ ~ http://www.apache.org/licenses/LICENSE-2.0 ~ ~ Unless required by applicable law or agreed to in writing, software ~ distributed under the License is distributed on an "AS IS" BASIS, ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ~ See the License for the specific language governing permissions and ~ limitations under the License. --> <configuration> <property name="CONSOLE_LOG_PATTERN" value="%yellow(%d{yyyy-MM-dd HH:mm:ss.SSS}) [%blue(%thread)] %highlight(%-5level) %green(%logger{60}) %blue(%file:%line) %X{sourceThread} - %cyan(%msg%n)"/> <appender name="console" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <!-- <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{60} %X{sourceThread} - %msg%n</pattern>--> <pattern>${CONSOLE_LOG_PATTERN}</pattern> <!-- 设置字符集 --> <charset>UTF-8</charset> </encoder> </appender> <!-- This affects logging for both user code and Flink --> <root level="INFO"> <appender-ref ref="console"/> </root> <!-- Uncomment this if you want to only change Flink's logging --> <!--<logger name="org.apache.flink" level="INFO">--> <!--<appender-ref ref="console"/>--> <!--</logger>--> <!-- The following lines keep the log level of common libraries/connectors on log level INFO. The root logger does not override this. You have to manually change the log levels here. --> <logger name="akka" level="INFO"> <appender-ref ref="console"/> </logger> <logger name="org.apache.kafka" level="INFO"> <appender-ref ref="console"/> </logger> <logger name="org.apache.hadoop" level="INFO"> <appender-ref ref="console"/> </logger> <logger name="org.apache.zookeeper" level="INFO"> <appender-ref ref="console"/> </logger> <!-- Suppress the irrelevant (wrong) warnings from the Netty channel handler --> <logger name="org.apache.flink.shaded.akka.org.jboss.netty.channel.DefaultChannelPipeline" level="ERROR"> <appender-ref ref="console"/> </logger> </configuration>
修改 pom.xml 配置
在引入flink相关依赖之前引入logback相关依赖,如下... <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <flink.version>1.9.2</flink.version> <flink.shade.version>3.0.0-cdh6.3.2-9.0</flink.shade.version> <logback.version>1.2.3</logback.version> <log4j-over-slf4j.version>1.7.30</log4j-over-slf4j.version> <scope.level>compile</scope.level> </properties> ... <dependencies> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-core</artifactId> <version>${logback.version}</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-access</artifactId> <version>${logback.version}</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>${logback.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> <version>${log4j-over-slf4j.version}</version> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-scala_${scala.binary.version}</artifactId> <version>${flink.version}</version> <scope>${scope.level}</scope> </dependency> ... </dependencies>