是否可以在 Linux 内核 OOM 事件之前触发 node.js 转储

is it possible to trigger the node.js dump before the linux kernel oom event

提问人:Dolphin 提问时间:11/3/2023 最后编辑:Dolphin 更新时间:11/3/2023 访问量:15

问:

我有一个 node.js(版本 16.20.2)应用程序总是被 linux OOM 杀手杀死,是否可以在 OOM 杀死事件之前转储 node.js 内存?我已经添加了转储逻辑并将转储公开为 rest api:

router.get('/dump', (req, res) => {
  const snapshotStream = v8.getHeapSnapshot()
  // It's important that the filename end with `.heapsnapshot`,
  // otherwise Chrome DevTools won't open it.
  const fileName = `/opt/data/y-websocket-dump/${Date.now()}.heapsnapshot`
  const fileStream = fs.createWriteStream(fileName)
  snapshotStream.pipe(fileStream)

  res.send('ok')
})

我只需要在linux OOM终止事件之前转储。并使用转储文件分析内存泄漏。可能吗?

节点.js OOM

评论

0赞 Yuvaraj M 11/3/2023
无法捕获事件SIGKILL

答: 暂无答案