Hi Xingbo, 多谢指导,亲测有效。 源python文件运行一会儿本身就结束运行了,过阵子后才会跳到断点里。 所以源python文件只是做了个提交的动作,实际执行都是异步执行,是否可以这么理解? 如果是的话,之前已经运行过很多次源python文件,是否本地已经在后台异步运行了多次?是的话是否能监控到这些任务?
[email protected] 发件人: Xingbo Huang 发送时间: 2020-12-15 09:59 收件人: user-zh 主题: Re: pyflink是否可调试 Hi, 想要调试可以使用的方式为 1. 在PyCharm里创建一个Python Remote Debug run -> Python Remote Debug -> + -> 选择一个端口(比如6789) 2. 安装pydevd-pycharm(你PyCharm使用的python解释器) pip install pydevd-pycharm 其实上一步那个界面也有指导你安装了 3. 将以下代码插入到你要断点的udaf的代码前面(这段代码其实也是来自第一步创建remote debug里面) import pydevd_pycharm pydevd_pycharm.settrace('localhost', port=6789, stdoutToServer=True, stderrToServer=True) 例如 @udaf(result_type=DataTypes.INT(), func_type="pandas") def mean_udaf(v): import pydevd_pycharm pydevd_pycharm.settrace('localhost', port=6789, stdoutToServer=True, stderrToServer=True) v.mean() 4. 在你的PyCharm里面点击Debug启动你刚刚创建的Remote Debug Server 5. 直接点击Run运行你的作业,这个时候会断点在你的udaf的代码里面了 Best, Xingbo [email protected] <[email protected]> 于2020年12月15日周二 上午9:25写道: > > 基于flink1.12.0版本的pyflink开发了一个程序,使用了udaf,想在本地的PyCharm环境调试该功能,在udaf的第一行打了断点,但是没法进入。 > 可以确认程序有正确运行,因为sink到kafka里看了是有数据的。 > 请问是否需要什么配置才能进行调试。 > > > > [email protected] >
