Debugging¶
There are a few ways to debug the Anonlink Entity Service, one of the easiest ways is using docker-compose to take care of all the dependant services.
Debugging in PyCharm¶
Roughly following the JetBrains tutorial <https://www.jetbrains.com/help/pycharm/using-docker-compose-as-a-remote-interpreter.html> will work with one deviation. Before debugging, launch the nginx service manually from the docker-compose.yml file.
The following steps through this process using PyCharm 2020.
Add Python Interpreter¶
Start by adding a new Python interpreter. In new versions of PyCharm look for the interpreter down the bottom right of the screen.
Make a docker-compose interpreter¶
Adding a Python interpreter from a docker-compose service is straightforward.
Manually start nginx¶
Because the Anonlink Entity Service has an nginx
container
in-front of the backend api we manually start nginx.
Note
An alternative would be to expose the port from the backend.
Create a Run Configuration¶
Create a new Python run configuration for the API. It should default to using the
docker-compose Python interpreter, add the script path to
entityservice._init_.py
.
Debug¶
Add a breakpoint and start debugging!
Visit the url in a browser (e.g. http://localhost:8851/api/v1/status) or cause the breakpoint in a notebook or separate unit test etc. If you want the interactive terminal just click “Console” in the debugger and enjoy auto-completion etc: