Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.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
Logging SparkJava使用log4j将日志重定向到文件_Logging_Log4j_Slf4j_Spark Java - Fatal编程技术网

Logging SparkJava使用log4j将日志重定向到文件

Logging SparkJava使用log4j将日志重定向到文件,logging,log4j,slf4j,spark-java,Logging,Log4j,Slf4j,Spark Java,我创建了一个简单的Spark项目,并将log4j作为依赖项包括在内,并添加了log4j.properties文件,以将日志写入文件系统上的文件。 由于某些原因,这不起作用,当我运行我的应用程序时,我只能在控制台中看到日志。 正在创建我为日志定义的文件,其中甚至有一些通用的日志行,但没有从应用程序记录的日志行 这是my build.gradle文件中的依赖项部分: dependencies { compile 'com.sparkjava:spark-core:2.3' compi

我创建了一个简单的Spark项目,并将log4j作为依赖项包括在内,并添加了log4j.properties文件,以将日志写入文件系统上的文件。 由于某些原因,这不起作用,当我运行我的应用程序时,我只能在控制台中看到日志。 正在创建我为日志定义的文件,其中甚至有一些通用的日志行,但没有从应用程序记录的日志行

这是my build.gradle文件中的依赖项部分:

dependencies {
    compile 'com.sparkjava:spark-core:2.3'
    compile group: 'org.springframework', name: 'spring-core', version: '4.3.5.RELEASE'
    compile group: 'org.springframework', name: 'spring-beans', version: '4.3.5.RELEASE'
    compile group: 'org.springframework', name: 'spring-context', version: '4.3.5.RELEASE'
    compile group: 'org.springframework', name: 'spring-expression', version: '4.3.5.RELEASE'
    compile group: 'org.mongodb', name: 'mongo-java-driver', version: '3.4.1'
    compile group: 'com.google.code.gson', name: 'gson', version: '1.7.2'
    compile group: 'com.google.guava', name: 'guava', version: '11.0.2'
    compile group: 'log4j', name: 'log4j', version: '1.2.17'
}
这是我的log4j.properties文件:

# 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} %-5p %c{1}:%L - %m%n

# Redirect log messages to a log file, support file rolling.
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=C:\\log4j-application.log
log4j.appender.file.MaxFileSize=5MB
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} %-5p %c{1}:%L - %m%n
我试图修改log4j.properties使其工作,但没有成功。 我只创建了日志文件,其中有几行是应用程序启动时创建的。 应用程序日志不在那里,它们只显示在eclipse控制台中


此设置有什么问题?

根据唯一需要的slf4j依赖项。您是否尝试过添加slf4j简单依赖项而不是log4j?

我只想简单地将日志记录到文件中,并将log4j依赖项添加到我的项目中。这是不必要的,因为sparkjava已经提供了可用于此目的的slf4j simple


我从build.gradle中删除了log4j依赖项,将simplelogger.properties添加到我的类路径中,并将其配置为将日志写入磁盘上的文件。

看来sparkjava已经提供了slf4j简单依赖项,因此不需要额外的依赖项。我刚刚从我的项目中删除了log4j,并正确配置了slf4j simple。您可以共享simplelogger.properties文件吗?