如何在独立flink集群中提交flink作业时指定与守护程序日志文件不同的日志文件

时间:2016-11-08 12:49:49

标签: apache-flink flink-streaming

当我启动flink独立群集时,它会将守护程序日志记录在conf / log4j.properties文件中提到的文件中,当我在该群集中提交flink作业时,它使用相同的属性文件来记录应用程序日志和写入taskmanagers上的相同日志文件。我希望为在flink独立群集中提交的每个应用程序提供单独的日志文件。有没有办法实现那个

1 个答案:

答案 0 :(得分:3)

使用./bin/flink shell脚本提交作业时,请使用以下环境变量来控制日志文件位置:

  • FLINK_LOG_DIR指定日志显示的目录
  • FLINK_IDENT_STRING允许您使文件名唯一

例如,如果您以

开始工作
FLINK_LOG_DIR=/var/log FLINK_IDENT_STRING=my_app_id ./bin/flink run /path/to/the.jar

然后日志将出现在/var/log/flink-my_app_id-client-$HOSTNAME.log

请注意,这仅适用于通过日志记录框架记录的消息,而不适用于刚刚打印到stdout的消息。