How to debug python script that is crashing python

2019-02-13 16:31发布

I'm trying to help debug a python script that is causing python (2.7) itself to crashes.

  • The script logs some info to a file and it ends at a different stop on each run, or at least what it writes out is at a different spot.
  • The script already have a try\catch's.
  • The script has worked previously without errors
  • This is on Window 2008 servers, with a fair bit of RAM and when run not much CPU usage.

So my question:

  • Are there tools or techniques that could help?
    • I see that there is a pdb module I could import but not sure if that would help this issue.
  • When a py script crashes python itself how would you debug that?

GB

1条回答
SAY GOODBYE
2楼-- · 2019-02-13 17:11

So there are no exceptions in the log? It just exits randomly at different spots?

To see every statement as it's executed, use the trace module:

python -u -m trace -t program.py

To run the program in the debugger, use pdb:

python -m pdb program.py

With those two you should be able to see if it's something within the program causing it to exit. If you don't see any evidence or pattern then it could be something outside of the program causing it to die.

On Linux I would also try running the program with strace and also watching the OOM killer. Not sure what similar steps would be in Windows (Windows doesn't have an OOM killer).

查看更多
登录 后发表回答