PHP 错误日志被 Xdebug 超时消息填满

PHP error log spammed by Xdebug Time-out messages

分步调试器工作正常,没有问题。

每次我在 VS 代码中工作而不监听来自 xdebug 的任何传入连接时,PHP 在我刷新页面时将此消息写入我的日志:

[06-Sep-2021 13:39:58 Europe/Brussels] Xdebug: [Step Debug] Time-out connecting to debugging client, waited: 200 ms. Tried: 10.1.2.4:9003 (from REMOTE_ADDR HTTP header), localhost:9003 (fallback through xdebug.client_host/xdebug.client_port) :-(

因为我不喜欢从我的日志中删除数百条不相关的消息,我想知道我是否可以禁用这条特定的消息? 我在文档中找不到任何关于此的内容。

使用 set_error_handler 覆盖行为是一种选择,但我想保持它干净:)

您不能在 Xdebug 3.0 中对此消息执行此操作。

但是 在 Xdebug 3.1(beta1 将在一小时内发布)中,您可以将 Xdebug 的 xdebug.log 设置为可写文件(甚至 /dev/null ,我没试过)。如果 Xdebug 日志处于活动状态,则 Xdebug 将不再将这些超时消息定向到 PHP 的错误机制,因此它们将不会显示在日志中。

这是相关问题:https://bugs.xdebug.org/view.php?id=1948

FWIW,你不太可能在这里使用 set_error_handler 做一些事情,因为它是一个内部 Xdebug 调用,不会经历 PHP 错误机制.