我正在使用 smtpd 及其捕获我在 process_message 中引发的 ValueError 异常并将描述打印到 stderr 而不是引发错误。它打印出的是我构造 ValueError 的字符串。
因此,如果我在 process_message 中执行此操作:
raise ValueError("550, This is the error")
我懂了
550, This is the error
在控制台上。我一辈子都找不到导致打印的代码。无论如何都要覆盖 stderr 以在每次打印某些内容时显示堆栈跟踪,或者以其他方式定位哪些代码行正在打印出这些行?