我有一个大型的多文件,Tkinter应用程序,具有无数的功能,然后与Pyinstaller一起打包为可执行文件。
它包含预期事件的错误处理。但是,它没有任何错误处理意外事件。在将应用程序打包为可执行文件之前运行应用程序时,会向控制台输出意外错误。一旦将其打包为可执行文件,这些错误就会被隐藏(我不希望终端窗口显示给用户)。
这个问题是意外错误不会在任何地方显示,因此我无法捕获和调试它们。
我怎么能有一个“全能”来抓取任何输出到控制台,或捕获或记录任何错误的输出?我知道很多方法可以使用额外的代码来完成这项工作,但是为应用程序的每个功能添加代码对于我正在努力实现的目标来说似乎过于繁琐。
Linux系统有一个解决方案:
strace -p <PID_OF_PROCESS> -s9999 -e write
它将为您提供已在运行的进程的完整输出。
看到:
man strace
详情。