python-anvil-app-server:你能运行 python 服务器端代码上的调试器 pdb 或 ipdb 吗?
python-anvil-app-server: can you run the python debuggor pdb or ipdb on the server side code?
- 我正在使用 python 的 anvil-app-server https://pypi.org/project/anvil-app-server/
进行一些网络开发
- 我想使用调试器,因为它是服务器端的 powerful/useful 工具 python 代码
- 我生成了一个名为 ServerSidePdb 的 hello-world 应用程序
- 我将
pdb
和 ipdb
放入 helloworld 生成的应用程序的服务器端回调中,并得到一个看起来像错误的控制台输出:
Calling function 'say_hello_name' for app 'ServerSidePdb' (ID client-q5jGe8vXpy/ATVXEjmwQAw==)
[DEBUG anvil.app-server.run] [SERVER] > /home/trevor/workspace/anvil/MyApp/ServerModule1.py(13)say_hello_name()
Worker terminated for IDs set() (return code -9)
[DEBUG anvil.app-server.run] [SERVER] (Pdb)
[ERROR anvil.app-server.run] Error report from client code:
AnvilWrappedError: [unexpected error]
Traceback:
/usr/lib64/python3.6/bdb.py:70
/usr/lib64/python3.6/bdb.py:51
MyApp/ServerModule1.py:13
MyApp/ServerModule1.py:13
app/MyApp/Form1/__init__.py:15
你能运行 python 服务器端代码上的调试器 pdb 或 ipdb 吗?如果是,怎么做?
- 服务器端代码在 java 服务器下执行,java 服务器捕获 stdin/stdout,这会阻止您直接 运行 pdb 或 ipdb
- 我听说 vscode 有很好的远程调试能力,所以这可能是一种进入调试器的方法
- 所有 anvil 服务器回调都有 30 秒超时
- 所以确保你只尝试在 anvil 后台任务中调试(或者我认为超时会过早地阻止你)
- 我正在使用 python 的 anvil-app-server https://pypi.org/project/anvil-app-server/ 进行一些网络开发
- 我想使用调试器,因为它是服务器端的 powerful/useful 工具 python 代码
- 我生成了一个名为 ServerSidePdb 的 hello-world 应用程序
- 我将
pdb
和ipdb
放入 helloworld 生成的应用程序的服务器端回调中,并得到一个看起来像错误的控制台输出:
Calling function 'say_hello_name' for app 'ServerSidePdb' (ID client-q5jGe8vXpy/ATVXEjmwQAw==)
[DEBUG anvil.app-server.run] [SERVER] > /home/trevor/workspace/anvil/MyApp/ServerModule1.py(13)say_hello_name()
Worker terminated for IDs set() (return code -9)
[DEBUG anvil.app-server.run] [SERVER] (Pdb)
[ERROR anvil.app-server.run] Error report from client code:
AnvilWrappedError: [unexpected error]
Traceback:
/usr/lib64/python3.6/bdb.py:70
/usr/lib64/python3.6/bdb.py:51
MyApp/ServerModule1.py:13
MyApp/ServerModule1.py:13
app/MyApp/Form1/__init__.py:15
你能运行 python 服务器端代码上的调试器 pdb 或 ipdb 吗?如果是,怎么做?
- 服务器端代码在 java 服务器下执行,java 服务器捕获 stdin/stdout,这会阻止您直接 运行 pdb 或 ipdb
- 我听说 vscode 有很好的远程调试能力,所以这可能是一种进入调试器的方法
- 所有 anvil 服务器回调都有 30 秒超时
- 所以确保你只尝试在 anvil 后台任务中调试(或者我认为超时会过早地阻止你)