我有一个Plack/Starman应用程序,它运行着从Carp模块调用'confess‘的TryCatch语句。但是,我注意到confess输出没有打印到STDOUT。我尝试将STDERR输出路由到STDOUT '2>&1',但是仍然没有看到任何东西。我已经搜索了可能的错误日志文件,但没有运气。这到底是打印到哪里去了?我相信这可能是一个简单的答案。日志文件位于何处?我在Ubuntu机器上运行,如果这很重要的话。
谢谢
发布于 2012-03-13 03:40:02
这里有些混乱。首先,confess (和池塘中的所有其他鲤鱼)不会打印到标准错误码:它们会打印到标准错误码。其次,您将使用try/catch (glorified eval)停止异常以及相关的输出,因此除非您自己显式打印它,否则不会打印它。您将看到警告,但不会看到终止程序的指令消息(不是Plack,而是您的脚本),因为它们已被try/catch代码吞噬,您可以自行决定是否应打印其中任何内容以及打印到何处。
https://stackoverflow.com/questions/9083262
复制相似问题