最佳答案
可以引用StreamingJobProgressListener类,它是StreamingListener的默认实现。由 Spark 用于捕获作业进度指标。
可以按如下方式获取此监听器:
JavaStreamingContext jssc = new JavaStreamingContext(sparkconf, Durations.seconds(60));
StreamingJobProgressListener progressListener = jssc.ssc().progressListener();
您可以探索 progressListener.onStageSubscribed、progressListener.onStageCompleted、progressListener.onTaskStart 和 progressListener.onTaskEnd 函数来获取所需的指标。
关于scala - 查找 Spark 阶段每个步骤的执行时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39321519/