Flink日志相关

关于flink日志的一部分内容,主要包含两个点,如何使用以及去哪里查看

  1. flink日志的使用

直接在类内定义,即可使用。
当然了,pom导入,看你喜欢怎么用了

		<dependency>
			<groupId>org.slf4jgroupId>
			<artifactId>slf4j-log4j12artifactId>
			<version>1.7.7version>
			<scope>runtimescope>
		dependency>
		<dependency>
			<groupId>log4jgroupId>
			<artifactId>log4jartifactId>
			<version>1.2.17version>
			<scope>runtimescope>
		dependency>

使用

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class StreamingJob {
    public static final Logger log = LoggerFactory.getLogger(StreamingJob.class);
    public static void main(String[] args) {
		log.info("参数正常,开始执行");  // 此处为算子外日志输出
		// 下面我抄一段别人的代码
		ExecutionEnvironment fbEnv = ExecutionEnvironment.getExecutionEnvironment();
        //需要与获取的字段一一对应,否则会取不到值
        TypeInformation[] fieldTypes = new TypeInformation[] {
                BasicTypeInfo.STRING_TYPE_INFO,
                BasicTypeInfo.STRING_TYPE_INFO,
                BasicTypeInfo.STRING_TYPE_INFO,
                BasicTypeInfo.STRING_TYPE_INFO,
                BasicTypeInfo.STRING_TYPE_INFO,
                BasicTypeInfo.STRING_TYPE_INFO,
                BasicTypeInfo.STRING_TYPE_INFO};
        RowTypeInfo rowTypeInfo = new RowTypeInfo(fieldTypes);
 
        //读mysql
        DataSet<Row> dataSource = fbEnv.createInput(JDBCInputFormat.buildJDBCInputFormat()
                .setDrivername("com.mysql.jdbc.Driver")
                .setDBUrl("jdbc:mysql://xxx/xxx")
                .setUsername("xxx")
                .setPassword("xxx")
                .setQuery("xxx")
                .setRowTypeInfo(rowTypeInfo)
                .finish());
		dataSource.map(new MapFunction<Row, Row>() {
                            @Override
                            public Row map(Row row) throws Exception {
                                // 此为算子内输出日志
                                log.info(JSON.toJSONString(row));
                                return row;
                            }
                        }); 

        fbEnv.execute()
	}
}
  1. flink输出日志查看
    关于flink输出日志的查看,分为两种(主要用于调试任务)
    1>算子外输出日志
    Flink日志相关_第1张图片

2>算子内输出日志
Flink日志相关_第2张图片

Flink日志相关_第3张图片
如此,已经可以满足日常的调试排错啦

你可能感兴趣的:(Java知识点,flink,java,log4j)