[eggjs/egg]npm run debug 断点 60s超时,无法正常完成调试

2024-06-28 920 views
4
在此输入你需要反馈的 Bug 具体信息(Bug in Detail):
  1. npm run debug调试断点 60s超时,影响正常功能的调试。
  2. egg版本是2.37.0。
  3. 报超时: image

断点调测超过60s是很常见的,应该怎么设置不超时,或者延长时间呢?

可复现问题的仓库地址(Reproduction Repo)

Node 版本号:

v16.13.2

Eggjs 版本号:

2.37.0

相关插件名称与版本号(PlugIn and Name):

不涉及

操作平台与版本号(Platform and Version):

win10 21H2

回答

8

@atian25 大佬帮看看。

9

这个报错跟断点无关的,你是不是有个重 cpu 的操作,如 readFileSync 啥的

9

@atian25 流程很简单的,不打断点1s内立即返回,controller入口打上断点,放一会超过60s,就报错了。

5

但我印象中这个报错不影响的,只是一个日志输出,不会退出进程才对

4

@hyj1991 @fengmk2 看看能否优化下 cluster-client这里的提示?我最近没电脑没得看。

2

@bi-kai config.clusterClient配置下heartbeatInterval可延长时间。heartbeatInterval默认是20000ms,该时间也是心跳定时检查的时间间隔,最大空闲超时时间是heartbeatInterval的3倍,所以默认是60s超时

config.clusterClient = {
    heartbeatInterval: 20000,
};
1

如果真是 cluster client 问题,可以在它那边检测 inspector.url() 是 debug 模式自动延长时间。 但我印象中它不影响的,不会超时后强制退出。

8

可以来一个 pr,判断是 debug 模式,不做心跳逻辑。