You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Error cause is not displayed when PM2 is started in cluster mode.
How could we reproduce this issue?
package.json:
{
"dependencies": {
"pm2": "^5.3.1"
}
}
server.js:
thrownewError("foo",{cause: newError("bar"),});
$ yarn run pm2-runtime --instances 1 server.jsyarn run v1.22.22warning package.json: No license field
$ /Users/oliver/Code/reduced-test-cases/pm2-error-cause/node_modules/.bin/pm2-runtime --instances 1 server.js2024-04-30T19:35:48: PM2 log: Launching in no daemon mode2024-04-30T19:35:48: PM2 log: App [server:0] starting in -cluster mode-2024-04-30T19:35:48: PM2 log: App [server:0] onlineError: foo at Object.<anonymous> (/Users/oliver/Code/reduced-test-cases/pm2-error-cause/server.js:1:7) at Module._compile (node:internal/modules/cjs/loader:1369:14) at Module._extensions..js (node:internal/modules/cjs/loader:1427:10) at Module.load (node:internal/modules/cjs/loader:1206:32) at Module._load (node:internal/modules/cjs/loader:1022:12) at /Users/oliver/Code/reduced-test-cases/pm2-error-cause/node_modules/pm2/lib/ProcessContainer.js:304:25 at wrapper (/Users/oliver/Code/reduced-test-cases/pm2-error-cause/node_modules/pm2/node_modules/async/internal/once.js:12:16) at next (/Users/oliver/Code/reduced-test-cases/pm2-error-cause/node_modules/pm2/node_modules/async/waterfall.js:96:20) at /Users/oliver/Code/reduced-test-cases/pm2-error-cause/node_modules/pm2/node_modules/async/internal/onlyOnce.js:12:16 at /Users/oliver/Code/reduced-test-cases/pm2-error-cause/node_modules/pm2/lib/Utility.js:175:182024-04-30T19:35:48: PM2 log: App name:server id:0 disconnected2024-04-30T19:35:48: PM2 log: App [server:0] exited with code [0] via signal [SIGINT]
If we remove --instances 1, PM2 will start in fork mode instead of cluster mode. There the issue does not reproduce:
$ yarn run pm2-runtime server.jsyarn run v1.22.22warning package.json: No license field
$ /Users/oliver/Code/reduced-test-cases/pm2-error-cause/node_modules/.bin/pm2-runtime server.js2024-04-30T19:36:22: PM2 log: Launching in no daemon mode2024-04-30T19:36:22: PM2 log: App [server:0] starting in -fork mode-2024-04-30T19:36:22: PM2 log: App [server:0] onlineError: foo at Object.<anonymous> (/Users/oliver/Code/reduced-test-cases/pm2-error-cause/server.js:1:7) at Module._compile (node:internal/modules/cjs/loader:1369:14) ... 7 lines matching cause stack trace ... at Module._load (node:internal/modules/cjs/loader:1022:12) { [cause]: Error: bar at Object.<anonymous> (/Users/oliver/Code/reduced-test-cases/pm2-error-cause/server.js:2:10) at Module._compile (node:internal/modules/cjs/loader:1369:14) at Module._extensions..js (node:internal/modules/cjs/loader:1427:10) at Module.load (node:internal/modules/cjs/loader:1206:32) at Module._load (node:internal/modules/cjs/loader:1022:12) at Object.<anonymous> (/Users/oliver/Code/reduced-test-cases/pm2-error-cause/node_modules/pm2/lib/ProcessContainerFork.js:33:23) at Module._compile (node:internal/modules/cjs/loader:1369:14) at Module._extensions..js (node:internal/modules/cjs/loader:1427:10) at Module.load (node:internal/modules/cjs/loader:1206:32) at Module._load (node:internal/modules/cjs/loader:1022:12)}2024-04-30T19:36:22: PM2 log: App [server:0] exited with code [1] via signal [SIGINT]
The text was updated successfully, but these errors were encountered:
What's going wrong?
Error
cause
is not displayed when PM2 is started in cluster mode.How could we reproduce this issue?
package.json
:server.js
:If we remove
--instances 1
, PM2 will start in fork mode instead of cluster mode. There the issue does not reproduce:The text was updated successfully, but these errors were encountered: