I remember searching for workflow I used in Java, for Python. In Java I just started the application with some debug flags that opened debug TCP port, then I connected with debugger (IDE), placed a breakpoint locally, and then the execution stopped when it hit the breakpoint.
I see it uses debugpy. Does it work similarly? I remember I stumbled upon some remote debugging library for Python that however required me to place breakpoint() calls in the program, and the program stopped immediately on the call. That's inferior.
yes, debugpy is similar. It also support Debug Adapter Protocol which is utilized by VS Code. This is why in addition to debugpy.breakpoint() calls you can simply use real VS Code breakpoints.
On top of that, Azure Debug Relay creates a secure tunnel between your machine and the remote debuggee, and therefore eliminate a need to expose open ports or VPN.
Azure Debugging Relay - is a Visual Studio Code extension and a Python package for distributed remote debugging. It solves a problem of debugging code in real development and production environments, simultaneously across multiple nodes and in different networks.
I see it uses debugpy. Does it work similarly? I remember I stumbled upon some remote debugging library for Python that however required me to place breakpoint() calls in the program, and the program stopped immediately on the call. That's inferior.
EDIT: The library is https://github.com/ionelmc/python-remote-pdb