gpt4 book ai didi

java - Spark 应用程序记录器

转载 作者:行者123 更新时间:2023-11-30 02:02:20 24 4
gpt4 key购买 nike

我试图让我的 Spark 应用程序登录到它自己的日志文件中,我不希望我的所有内容与 Spark 的内容混合在一起,它不可读。

由于 Spark 库的兼容性,我放弃使用 Logback,因此我选择使用 log4j。我在 java 应用程序的 src/main/resources 中创建了自定义 log4j.properties,但是当我启动 jar 的 Spark-submit 时,我的所有日​​志都写入了 Spark 的工作日志文件中。它接缝了我的 jar 内的自定义 log4j.properties 被忽略了。

这是命令:

./spark-submit --jars /home/user/LIBRERIE/ORACLE/ojdbc8.jar,\
/home/user/.m3/repository/org/mongodb/spark/mongo-spark-connector_2.11/2.3.0/mongo-spark-connector_2.11-2.3.0.jar,\
/home/user/.m3/repository/org/mongodb/mongo-java-driver/3.8.1/mongo-java-driver-3.8.1.jar,\
/home/user/.m3/repository/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar \
--class my.pkg.common.SparkHandlerStandalone \
--master spark://162.16.215.59:7077 \
--deploy-mode cluster \
/home/user/NetBeansProjects/SparkScala/target/SparkScala-1.0-SNAPSHOT.jar

我的 log4j.properties:

log4j.rootLogger=DEBUG, file

log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=/home/user/TEMP/Spark/sparkapp.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.SSS} %-5p %c{1}:%L - %m%n

有谁知道如何分离两个日志?

最佳答案

请在 log4j 属性文件中为自定义日志创建不同的类别。

log4j.appender.customLog=org.apache.log4j.FileAppender
log4j.appender.customLog.File=/home/user/TEMP/Spark/sparkapp.log
log4j.appender.customLog.layout=org.apache.log4j.PatternLayout
log4j.appender.customLog.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p %c{1}:%L - %m%n

log4j.category.customLog=INFO, debugLog
log4j.additivity.customLog=false

在应用程序代码中,按如下方式配置记录器

static final Logger customLog = Logger.getLogger("customLog");
customLog.info("Test msg")

确保在 extraJava 选项中设置了自定义的 log4j 属性。

spark.executor.extraJavaOptions=-Dlog4j.configuration=/home/hadoop/spark-conf/log4j.properties

spark.driver.extraJavaOptions=-Dlog4j.configuration=/home/hadoop/spark-conf/log4j.properties

关于java - Spark 应用程序记录器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52427806/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com