簡體   English   中英

文件 Spark 中的 Log4j

[英]Log4j in file Spark

我正在嘗試記錄我的項目。 為此,我使用 log4j 並將信息和設置放在代碼本身中,而不使用屬性文件,如下所示。

public class Teste {

    Logger log = Logger.getLogger(Teste.class.getName());

    public static void configError() {

        EnhancedPatternLayout layout = new EnhancedPatternLayout();
        String conversionPattern = "%d{ISO8601}{GMT+1} %-5p %m%n";
        layout.setConversionPattern(conversionPattern);
        String fileError = "C:/ProducerError.log";

        // creates console appender
        ConsoleAppender consoleAppender = new ConsoleAppender();
        consoleAppender.setLayout(layout);
        consoleAppender.activateOptions();

        // creates file appender
        FileAppender fileAppender = new FileAppender();
        fileAppender.setFile(fileError);
        fileAppender.setLayout(layout);
        fileAppender.activateOptions();

        // configures the root logger
        Logger rootLogger = Logger.getRootLogger();
        rootLogger.setLevel(Level.ERROR);
        rootLogger.addAppender(consoleAppender);
        rootLogger.addAppender(fileAppender);

        log.error("Error teste");

        rootLogger.removeAllAppenders();
    }
}

我想做同樣的事情,但在 spark 文件中。 我嘗試了同樣的方法,但它沒有返回任何東西。 火花日志如何工作? 我不能像以前那樣把它放在代碼中嗎? 我有一個帶有 spark-submit 的 DockerFile,但我不想弄亂該代碼。

提交 spark 作業時提供配置文件路徑-Dlog4j.configuration=path/to/log4j.properties

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM