Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 风暴日志文件/文件目录:在哪里?_Java_Log4j_Slf4j_Apache Storm - Fatal编程技术网

Java 风暴日志文件/文件目录:在哪里?

Java 风暴日志文件/文件目录:在哪里?,java,log4j,slf4j,apache-storm,Java,Log4j,Slf4j,Apache Storm,我想更改storm的日志文件目录和我自己的日志 我正在使用localcluster,我已经编写了简单的代码并从ide(IntelliJ)运行了它,它运行正常,还显示了日志 我已决定将slf4j用于我自己的日志,并且我已经看到storm在内部使用此依赖关系: <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j-impl

我想更改storm的日志文件目录和我自己的日志

我正在使用localcluster,我已经编写了简单的代码并从ide(IntelliJ)运行了它,它运行正常,还显示了日志

我已决定将slf4j用于我自己的日志,并且我已经看到storm在内部使用此依赖关系:

<dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-slf4j-impl</artifactId>
      <version>2.8.2</version>
      <scope>compile</scope>
 </dependency>
以下是图片,可能会有所帮助:

从外观上看,您的类路径中可能有另一个log4j.properties文件,而不是这个文件。有时它可以包含在jar文件中


一个可能的解决方案是排除storm的日志依赖性,并提供您自己的日志依赖性和log4j.properties

是的,我想是这样的。当我排除时,它可以工作,但我想在不排除的情况下将这个log4j.properties重写为我的log4j.properties。因为当我尝试排除时,遇到了一些错误(log4j版本冲突),请将此添加到supervisor计算机节点的storm.yaml中:worker.childopts:“-Dlog4j.configuration=log4j.properties”,然后我重新启动supervisor,之后它应该开始使用您的log4j而不是storm。如果我在生产模式下工作,我可以尝试,但是我在本地模式下工作,运行ide.storm 0.10.x中的代码,切换到使用log4j2而不是logback,storm只搜索classpath下的log4j2.xml文件。因为它是一个maven项目,所以可以将它放在src/main/resource下并覆盖它
<dependencies>
        <dependency>
            <groupId>org.apache.storm</groupId>
            <artifactId>storm-core</artifactId>
            <version>1.2.2</version>
            <scope>compiled</scope>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>${slf4j.version}</version>
        </dependency>
</dependencies>
# Root logger option
  log4j.rootLogger=info, stdout, file

# Redirect log messages to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy:MM:dd         
HH:mm:ss.SSS} [%thread] %-5p %c %m%n

# Redirect log messages to a log file, support file rolling.
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=Log4jFiles/lcf4j.log
log4j.appender.file.MaxFileSize=100MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy:MM:dd HH:mm:ss.SSS} [%thread] %-5p %c %m%n