问题标签 [pm2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
786 浏览

linux - 如何按时间(每天)或按日志大小将 pm2 out 日志分开?

我在节点服务器中使用 pm2。我想保存日志,按时间或日志文件大小分隔。

我保存日志以进行每日报告。

我该怎么做?

0 投票
1 回答
737 浏览

ubuntu - pm2 + EC2 实例 + 引导脚本 = 挂起?

当我尝试使用 pm2 启动 AWS EC2 实例时出现奇怪的问题

其中 ${BOOTSTRAP} 是我的文件的网址BOOTSTRAP='file://ec2-bootstrap.sh'

问题是它有以下行在尝试启动 pm2 守护程序时挂起:

发生这种情况后,处理器负载达到 100% 高,并且虚拟内存用完其大小。

我唯一能找到的东西是关于从属实例+ stdin,例如看这里这里,但是这两篇文章都离解决我的问题太远了。

当我尝试手动运行此命令时,它工作得很好,非常快并且符合预期,但是如果我尝试使用 运行它at,让我们说

问题重现。也挂了...

如何解决这个问题?

提前感谢您,任何帮助将不胜感激

0 投票
1 回答
6251 浏览

javascript - 您如何运行 pm2 cron 作业而不关心它启动的进程是否已启动?

说明我的情况。我有一个运行的 pm2 cron 脚本:

这运行调用的 js 脚本clear-redis-state-cron.js就好了。

这个脚本的作用是停止进程p1和进程p2。然后它运行一个 lua redis 脚本,从数据库中清除一些键。这一切都很好,但为了简洁起见,我把它放在这里。

它运行一个clear()在这里定义的 js 函数:

我对此没有任何问题。但是,它似乎在启动时崩溃。假设我已经让 pm2 运行两个进程 component1 和 component2,分别称为 p1 和 p2。当我使用 cron 启动 cron 时,为什么会出现以下错误--no-daemon

我的预感是,要么进程启动不正确,因此处于错误状态,因此当它尝试关闭它时,它已经关闭,但是因为 pm2 假设出现问题,所以 cron 进程停止了。

有什么想法我可能做错了吗?

编辑:我尝试像这样承诺我的关闭 pm2 逻辑:

停止正在运行的进程后,结果如下:

0 投票
1 回答
1327 浏览

pm2 - 在 pm2 日志格式“YYYY-MM-DD HH:mm Z”中,“Z”是什么意思?

在示例https://github.com/Unitech/PM2/blob/master/ADVANCED_README.md中启动 pm2 显示为

“Z”是什么意思?在日志中打印+04:00

0 投票
2 回答
5064 浏览

pm2 - 如何更改 pm2 日志中的时区

以下是应用程序的声明json文件

要更改时区,我已按照https://github.com/Unitech/pm2/issues/560的评论进行操作

但它不起作用。该行为与认为“TZ”不存在的行为相同。我什至尝试将时区硬编码为数值,例如“+08:00”,但这是行不通的。如何更改日志中的时区。

0 投票
6 回答
11571 浏览

node.js - 如何从启动中删除 pm2(在 Mac 上)

我尝试使用pm2,它是 node.js 应用程序的进程管理器。我尝试了他们的pm2 启动实用程序,该实用程序在系统重新启动时为 pm2 生成并安装启动脚本。

我在我的mac上试过这个,它完美无缺。pm2 会自动重新启动并生成我所有的节点脚本。

但是现在,我已经完成了实验,如何从我的启动中删除它?我希望 pm2 带有一个类似的简单实用程序,可以从启动中自行卸载。

我知道它正在使用launchdmac 来重新启动进程。我注意到它在目录io.keymetrics.PM2.plist下安装了一个文件/Users/<username>/Library/LaunchAgents

只是删除这个文件那么简单吗?还是它在做一些更具侵入性的事情,并且需要更优雅的卸载?

它在内部使用以下命令来安装启动脚本

0 投票
2 回答
1039 浏览

node.js - 用sailsjs重新启动pm2循环

我的pm2有问题。我的开始 json 是

然后我做

pm2 start dev.json

PM2 无限重启并显示此消息

但是没有文件被改变。在sails 注销调试消息后,似乎是PM2 重新启动。有任何想法吗?

0 投票
4 回答
25106 浏览

node.js - 如何使用 pm2 观看和重新加载 ExpressJS 应用程序

我正在开发一个 ExpressJS 应用程序。我使用 pm2 来加载它:

这很好用,只是添加--watch标志似乎不起作用;每次更改 JS 源时,我都需要显式重新启动它以使更改生效:

我究竟做错了什么?我已经--watch使用非 ExpressJS 应用程序尝试了该标志,它按预期工作。

0 投票
3 回答
3564 浏览

node.js - 多个处理器上的 NodeJS(PM2、Cluster、Recluster、Naught)

我正在研究在多核环境中运行节点的选项。

我正在尝试确定最佳方法,到目前为止,我已经看到了这些选项

  • 使用内置集群库来启动工作并响应信号
  • 使用 PM,但是 PM2 -i 被列为 beta。
  • 没用
  • 重新集群

还有其他选择吗?人们在生产中使用什么?

0 投票
1 回答
1332 浏览

node.js - 厨师设置:尝试使用 PM2 启动节点应用程序

我正在使用nodejs说明书来安装nodePM2模块。

到目前为止,一切都很好。但是,当我尝试通过 PM2 使用 process.json 文件启动我的节点应用程序时,它会启动,但当我 ssh 进入机器并运行时,它并没有在 PM2 输出中列出pm2 list……非常烦人。

我做错了什么不出现在那里是正确的吗?

process.json看起来像这样: