Xdebug在没有错误的情况下启动与客户端的连接



我遇到了一个问题,我不确定是问题还是预期问题。

xdebug.mode=debug
xdebug.start_upon_error=yes

脚本中没有(未捕获的(错误或异常,但在请求处理过程中会多次启动连接。这会导致响应极其缓慢,尤其是当客户端没有侦听时,这种情况会在控制台中出现多次(4-6(。

[Fri Apr 23 15:32:31 2021] Xdebug: [Step Debug] Time-out connecting to debugging client, waited: 200 ms. Tried: localhost:9003 (through xdebug.client_host/xdebug.client_port) :-(

所有异常都得到了正确处理,响应正常,只是速度非常慢。

如果我把start_upon_error变成no,或者把mode变成develop,这个问题就消失了。

文档中没有说明任何关于这个主题的内容,而对于xdebug.show_error_tracexdebug.show_exception_trace都有如下信息:

当此设置设置为1时,无论何时出现错误,Xdebug都将显示堆栈跟踪-即使此错误实际上被捕获。

所以我的问题是,这种行为是有意的吗?如果是这样,它也应该出现在文档中。

在Xdebug 3.0.0和3.0.4版本(PHP 8、ZTS、x64(中尝试过这一点。感谢您的提前反应。

当异常通过时,Xdebug不知道(也看不到(它是否会被捕获。因此,它需要启动调试请求,以便IDE能够处理潜在的警告/错误/异常。

因此,这是有意的。

正如你所说,它应该被记录下来。最好的排序方法是在https://bugs.xdebug.org

相关内容

  • 没有找到相关文章

最新更新