微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何告诉 pm2 忽略位于 node_modules 和子文件夹的脚本中的所有错误?

如何解决如何告诉 pm2 忽略位于 node_modules 和子文件夹的脚本中的所有错误?

我正在服务器环境下测试一个APP:

  • ubuntu下aaPanel或btPanel的使用
  • pm2 模块的使用
  • 应用程序正在运行但因错误而重新启动
  • 我正在使用自定义错误管理和日志功能
  • 我希望 pm2 忽略所有 console.log(error) 和位于 node_modules 和子文件夹中的脚本中发生的错误

有什么想法吗?

感谢您的时间和任何帮助

这是来自 pm2 的一些错误日志的示例:

2021-03-12T01:52:51: PM2 log: App [MyApp] exited with code [0] via signal [SIGINT]

这是来自 pm2 的输出日志中的错误示例:

Error: /www/wwwroot/apps/MyApp/1.0.0.2/node_modules/bcrypt/lib/binding/napi-v3/bcrypt_lib.node: invalid ELF header
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1122:18)
    at Module.load (internal/modules/cjs/loader.js:928:32)
    at Function.Module._load (internal/modules/cjs/loader.js:769:14)
    at Module.require (internal/modules/cjs/loader.js:952:19)
    at Module.Hook._require.Module.require (/www/server/nvm/versions/node/v14.16.0/lib/node_modules/pm2/node_modules/require-in-the-middle/index.js:80:39)
    at require (internal/modules/cjs/helpers.js:88:18)
    at Object.<anonymous> (/www/wwwroot/apps/MyApp/1.0.0.2/node_modules/bcrypt/bcrypt.js:6:16)
    at Module._compile (internal/modules/cjs/loader.js:1063:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
    at Module.load (internal/modules/cjs/loader.js:928:32)

这是来自 aaPanel 或 btPanel 中的控制台 pm2 控制台的日志:

2021-03-12T00:05:50: PM2 log: ===============================================================================
2021-03-12T00:05:50: PM2 log: --- New PM2 Daemon started ----------------------------------------------------
2021-03-12T00:05:50: PM2 log: Time                 : Fri Mar 12 2021 00:05:50 GMT+0000 (Coordinated Universal Time)
2021-03-12T00:05:50: PM2 log: PM2 version          : 4.5.5
2021-03-12T00:05:50: PM2 log: Node.js version      : 14.16.0
2021-03-12T00:05:50: PM2 log: Current arch         : x64
2021-03-12T00:05:50: PM2 log: PM2 home             : /root/.pm2
2021-03-12T00:05:50: PM2 log: PM2 PID file         : /root/.pm2/pm2.pid
2021-03-12T00:05:50: PM2 log: RPC socket file      : /root/.pm2/rpc.sock
2021-03-12T00:05:50: PM2 log: BUS socket file      : /root/.pm2/pub.sock
2021-03-12T00:05:50: PM2 log: Application log path : /root/.pm2/logs
2021-03-12T00:05:50: PM2 log: Worker Interval      : 30000
2021-03-12T00:05:50: PM2 log: Process dump file    : /root/.pm2/dump.pm2
2021-03-12T00:05:50: PM2 log: Concurrent actions   : 2
2021-03-12T00:05:50: PM2 log: SIGTERM timeout      : 1600
2021-03-12T00:05:50: PM2 log: ===============================================================================
2021-03-12T00:20:11: PM2 log: App [MyApp] starting in -fork mode-
2021-03-12T00:20:11: PM2 log: App [MyApp] online
2021-03-12T00:21:59: PM2 log: Stopping app:1.0.0.2 id:0
2021-03-12T00:21:59: PM2 log: App [MyApp] exited with code [0] via signal [SIGINT]
2021-03-12T00:21:59: PM2 log: pid=95350 msg=process killed
2021-03-12T00:22:24: PM2 log: App [MyApp] starting in -fork mode-
2021-03-12T00:22:24: PM2 log: App [MyApp] online
2021-03-12T00:40:41: PM2 log: Stopping app:MyApp id:0
2021-03-12T00:40:41: PM2 log: App [MyApp] exited with code [0] via signal [SIGINT]
2021-03-12T00:40:41: PM2 log: pid=96990 msg=process killed

附加说明:

  • 应用在本地环境下完美运行
  • pm2 可能是一些糟糕的配置问题!
  • 我使用“nodemon index.js”运行并测试应用程序一切正常
  • 我使用“node index.js”运行并测试应用程序一切正常
  • 我使用“npm start”运行并测试应用程序一切正常
  • 我运行 npm update 一切正常
  • 我运行 npm audit 一切正常

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?