I have used Python extensively over the years with multi-processing code. It’s important to understand that this article is not for those looking how to debug multi-threaded Python programs or more specifically pseudo-threaded programs as Python has the GIL limitation.
However, with the right tools and techniques, it is possible to effectively debug multiprocessing code in Python.
The code example above shows how easily you can setup your logger to debug multiprocessing in Python easier and knowing which print statement is from what process.
Using runsnakerun you can basically profile each Python process as you would normally do to identify any issues with the code.