Eclipse中的Spark代码调试

时间:2017-01-20 12:23:45

标签: scala apache-spark

我在Eclipse中调试Spark代码。我面临的问题如下:

  1. 我在RDD内创建JSON对象,但在logger.info / println中,它 没有在控制台上打印任何内容。
  2. 正在打印logger.info("Record stream count " + rdd.count)和其他RDD方法的信息,但不打印我在RDD中调用的方法的任何内容。
  3. 一旦启动,如何停止火花应用程序。我的是Scala代码,我从Spark DStream获取输入并从.txt文件读取以在本地设置环境。
  4. 如有任何其他问题/澄清,请与我们联系。

1 个答案:

答案 0 :(得分:0)

关于问题的第一点和第二点, 但首先,您的应用程序是否在群集模式下运行?如果是,请引用http://spark.apache.org/docs/latest/programming-guide.html

  

但是,在群集模式下,stdout的输出被调用   执行者现在正在写入执行者的stdout,而不是那个   在驱动程序上,驱动程序上的stdout将不显示这些!打印全部   驱动程序上的元素,可以先使用collect()方法   将RDD带到驱动程序节点:rdd.collect().foreach(println)

关于第三点,您可以通过在以下

中提供主ID和驱动程序ID来停止Spark应用程序
./bin/spark-class org.apache.spark.deploy.Client kill <master url> <driver ID>