簡體   English   中英

抑制 Spark Java API 警告

[英]Suppress Spark Java API warnings

我在我的論文項目中使用 Spark Java API。 由於我需要在控制台中打印大量結果,因此我試圖抑制所有與 spark 相關的 INFO 日志記錄。 我在本地(用於調試等)和遠程集群上工作該項目。 我設法使用下面的示例配置關閉了其中的大部分。

Logger.getLogger("org").setLevel(Level.OFF);
Logger.getLogger("akka").setLevel(Level.OFF);

final SparkConf sparkConf = new SparkConf().setAppName("WordCount").setMaster("local[16]");
final JavaSparkContext ctx = new JavaSparkContext(sparkConf);

ctx.setLogLevel("ERROR");

但是,每次初始化 spark 上下文時我仍然會收到警告,這有時會讓人迷失方向。 下面我給出了控制台output的示例:

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.apache.spark.unsafe.Platform (file:/C:/Users/SKIKK/.m2/repository/org/apache/spark/spark-unsafe_2.12/3.2.2/spark-unsafe_2.12-3.2.2.jar) to constructor java.nio.DirectByteBuffer(long,int)
WARNING: Please consider reporting this to the maintainers of org.apache.spark.unsafe.Platform
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties

我在論壇中嘗試了不同的建議; 但是,我找不到可行的解決方案。

我切換到 Java 17. 下面這行做了魔法: Logger.getRootLogger().setLevel(Level.toLevel("ERROR"));

暫無
暫無

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

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