我尝试将配置属性设置为翻转stderr日志(正在增长和增长)
mySparkConf.set("spark.executor.logs.rolling.maxRetainedFiles","5")
mySparkConf.set("spark.executor.logs.rolling.time.interval","minutely")
mySparkConf.set("spark.executor.logs.rolling.strategy","time")
或
mySparkConf.set("spark.executor.logs.rolling.maxRetainedFiles","5")
mySparkConf.set("spark.executor.logs.rolling.maxSize","100000")
mySparkConf.set("spark.executor.logs.rolling.strategy","size")
它不起作用或它的工作方式与我预期的不同(没有太多的文档)。
例如,我希望基于时间的滚动会在每分钟后创建新文件(如上所述)。然而,在那段时间之后,它仍然在增长。
mySparkConf = SparkConf()
...
mySparkConf.set("spark.executor.logs.rolling.maxRetainedFiles","5")
mySparkConf.set("spark.executor.logs.rolling.maxSize","100000")
mySparkConf.set("spark.executor.logs.rolling.strategy","size")
...
mySparkContext = SparkContext(conf=mySparkConf)
mySparkStreamingContext = StreamingContext(mySparkContext,10)
mySparkSession = SparkSession.builder.appName("my app").config(conf=mySparkConf).getOrCreate()
答案 0 :(得分:1)
您需要在两个位置更改(添加一些内容)。 $SPARK_HOME/conf/spark-default.conf
中的一个,您需要添加这三行in each executor
:
spark.executor.logs.rolling.time.interval daily
spark.executor.logs.rolling.strategy time
spark.executor.logs.rolling.maxRetainedFiles 7
您需要更改for each executor
的其他文件是$SPARK_HOME/conf/spark-env.sh
,请添加以下内容:
SPARK_WORKER_OPTS="$SPARK_WORKER_OPTS -Dspark.worker.cleanup.enabled=true -Dspark.worker.cleanup.interval=1800
-Dspark.worker.cleanup.appDataTtl=864000
-Dspark.executor.logs.rolling.strategy=time
-Dspark.executor.logs.rolling.time.interval=daily
-Dspark.executor.logs.rolling.maxRetainedFiles=7 "
export SPARK_WORKER_OPTS
这些对我有用。
答案 1 :(得分:0)
您可以使用以下属性在spark-defaults.conf
下的install_location/resources/spark/conf/
中配置属性:
spark.executor.logs.rolling.maxRetainedFiles 5
spark.executor.logs.rolling.strategy size
spark.executor.logs.rolling.maxSize 100000
请注意,在RollingPolicy代码中检查了MINIMUM_SIZE_BYTES,因此请确保生成足够的日志(超过81920字节)来滚动文件。
参考。 https://github.com/dgshep/spark/commit/258e6c3786ed79ab0245bc7b37a5f55eefbf4358
答案 2 :(得分:0)
相当古老的问题,但仍缺乏解释 - 这些属性不是应用程序设置 - 它们是Spark Worker设置,因此您必须将它们传递给Worker而不是在SparkConf中设置它们。