首页 > 解决方案 > AWS 上 Flink 的空文件附加程序错误

问题描述

我能够成功地将 Flink Job Manager 上传到 AWS EMR。但是,当我尝试将程序作为 JAR 提交时,出现以下错误。我在 Flink 配置中看不到任何会影响日志记录的内容。它尝试访问的文件也不存在,但创建它并确保目录/文件有足够的权限并没有帮助。

有谁知道可能导致以下错误的原因?

2021-05-08 17:23:07,484 main ERROR FileManager (/var/log/flink-cli/flink-hadoop-client-ip-172-31-60-223.log) java.io.FileNotFoundException: /var/log/flink-cli/flink-hadoop-client-ip-172-31-60-223.log (Permission denied) java.io.FileNotFoundException: /var/log/flink-cli/flink-hadoop-client-ip-172-31-60-223.log (Permission denied)
        at java.io.FileOutputStream.open0(Native Method)
        at java.io.FileOutputStream.open(FileOutputStream.java:270)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
        at org.apache.logging.log4j.core.appender.FileManager$FileManagerFactory.createManager(FileManager.java:433)
        at org.apache.logging.log4j.core.appender.FileManager$FileManagerFactory.createManager(FileManager.java:417)
        at org.apache.logging.log4j.core.appender.AbstractManager.getManager(AbstractManager.java:113)
        at org.apache.logging.log4j.core.appender.OutputStreamManager.getManager(OutputStreamManager.java:114)
        at org.apache.logging.log4j.core.appender.FileManager.getFileManager(FileManager.java:182)
        at org.apache.logging.log4j.core.appender.FileAppender$Builder.build(FileAppender.java:96)
        at org.apache.logging.log4j.core.appender.FileAppender$Builder.build(FileAppender.java:52)
        at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:122)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1002)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:942)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:934)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:552)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:241)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:288)
        at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:579)
        at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:651)
        at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:668)
        at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:253)
        at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153)
        at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
        at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194)
        at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:138)
        at org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:45)
        at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:48)
        at org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:30)
        at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:329)
        at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:349)
        at org.apache.flink.client.cli.CliFrontend.<clinit>(CliFrontend.java:89)

2021-05-08 17:23:07,490 main ERROR Could not create plugin of type class org.apache.logging.log4j.core.appender.FileAppender for element FILE: java.lang.IllegalStateException: ManagerFactory [org.apache.logging.log4j.core.appender.FileManager$FileManagerFactory@662ac478] unable to create manager for [/var/log/flink-cli/flink-hadoop-client-ip-172-31-60-223.log] with data [org.apache.logging.log4j.core.appender.FileManager$FactoryData@6743e411] java.lang.IllegalStateException: ManagerFactory [org.apache.logging.log4j.core.appender.FileManager$FileManagerFactory@662ac478] unable to create manager for [/var/log/flink-cli/flink-hadoop-client-ip-172-31-60-223.log] with data [org.apache.logging.log4j.core.appender.FileManager$FactoryData@6743e411]
        at org.apache.logging.log4j.core.appender.AbstractManager.getManager(AbstractManager.java:115)
        at org.apache.logging.log4j.core.appender.OutputStreamManager.getManager(OutputStreamManager.java:114)
        at org.apache.logging.log4j.core.appender.FileManager.getFileManager(FileManager.java:182)
        at org.apache.logging.log4j.core.appender.FileAppender$Builder.build(FileAppender.java:96)
        at org.apache.logging.log4j.core.appender.FileAppender$Builder.build(FileAppender.java:52)
        at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:122)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1002)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:942)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:934)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:552)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:241)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:288)
        at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:579)
        at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:651)
        at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:668)
        at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:253)
        at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153)
        at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
        at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194)
        at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:138)
        at org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:45)
        at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:48)
        at org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:30)
        at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:329)
        at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:349)
        at org.apache.flink.client.cli.CliFrontend.<clinit>(CliFrontend.java:89)

2021-05-08 17:23:07,491 main ERROR Unable to invoke factory method in class org.apache.logging.log4j.core.appender.FileAppender for element FILE: java.lang.IllegalStateException: No factory method found for class org.apache.logging.log4j.core.appender.FileAppender java.lang.IllegalStateException: No factory method found for class org.apache.logging.log4j.core.appender.FileAppender
        at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.findFactoryMethod(PluginBuilder.java:234)
        at org.apache.logging.log4j.core.config.plugins.util.PluginBuilder.build(PluginBuilder.java:134)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createPluginObject(AbstractConfiguration.java:1002)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:942)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.createConfiguration(AbstractConfiguration.java:934)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.doConfigure(AbstractConfiguration.java:552)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.initialize(AbstractConfiguration.java:241)
        at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:288)
        at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:579)
        at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:651)
        at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:668)
        at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:253)
        at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153)
        at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
        at org.apache.logging.log4j.LogManager.getContext(LogManager.java:194)
        at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:138)
        at org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:45)
        at org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:48)
        at org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:30)
        at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:329)
        at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:349)
        at org.apache.flink.client.cli.CliFrontend.<clinit>(CliFrontend.java:89)

2021-05-08 17:23:07,492 main ERROR Null object returned for FILE in Appenders.
2021-05-08 17:23:07,493 main ERROR Unable to locate appender "FileAppender" for logger config "root"

标签: javaapache-flinkamazon-emr

解决方案


推荐阅读