首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用ipdb方式调试pyspark

用ipdb方式调试pyspark
EN

Stack Overflow用户
提问于 2017-03-15 11:19:22
回答 1查看 797关注 0票数 3

在开发python代码时,我使用包ipdb

这样就停止了python代码的执行,我在这里插入了ipdb.set_trace(),并向我提供了一个python解释器命令行。

但是,在我为pyspark开发并使用spark-submit发送的python代码中,ipdb包不起作用。

因此,我的问题是:是否有一种方法,可以用类似于使用ipdb包的方式来调试我的package?

注意:显然,对于在远程节点上执行的python代码,这是不可能的。但是,当我在选项spark-submit中使用--master local[1]时,我希望这是可能的。

PS。有一个相关的问题,但范围更窄,这里:How to PySpark Codes in Debug Jupyter Notebook

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-19 12:58:11

代码语言:javascript
复制
PYSPARK_DRIVER_PYTHON=ipython pyspark

      ____              __
     / __/__  ___ _____/ /__
    _\ \/ _ \/ _ `/ __/  '_/
   /__ / .__/\_,_/_/ /_/\_\   version 2.4.3
      /_/

Using Python version 3.7.1 (default, Jun 16 2019 23:56:28)
SparkSession available as 'spark'.

In [1]: sc.stop()

In [2]: run -d main.py
Breakpoint 1 at /Users/andrii/work/demo/main.py:1
NOTE: Enter 'c' at the ipdb>  prompt to continue execution.
> /Users/andrii/work/demo/main.py(1)<module>()
1---> 1 print(123)
      2 import ipdb;ipdb.set_trace()
      3 a = 2
      4 b = 3

代码语言:javascript
复制
In [3]: run main.py
123
> /Users/andrii/work/demo/main.py(3)<module>()
      2 import ipdb;ipdb.set_trace()
----> 3 a = 2
      4 b = 3
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42808273

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档