问题标签 [monit]

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 投票
4 回答
5546 浏览

ruby-on-rails - 即使在重新启动后,我如何才能让乘客独立运行?

我有一些应用程序在 ruby​​ 1.9.2 上运行 rails 3,并使用 nginx + 乘客部署在 Ubuntu 10.04 LTS 机器上。现在,我需要添加一个在 ruby​​ 1.8.7 (REE) 和 Rails 2 上运行的新应用程序。我使用 RVM、Passenger Standalone 和反向代理完成了这项工作。

问题是,每次我必须重新启动服务器(例如安装安全更新)时,我都必须手动启动Passenger Standalone。

有没有办法自动启动它?我被告知要使用 Monit 或 God,但我无法编写适用于 Passenger Standalone 的正确配方。我在 God 和 RVM 方面也遇到了一些问题,所以如果你有一个不使用 God 的解决方案,或者如果你知道如何正确配置 God/Rvm,那就更好了。

0 投票
3 回答
7886 浏览

apache - CentOS 上的 Monit 导致 httpd.pid 无法创建

解决方案是替换这一行:

有了这条线:

而且我还删除了“组 apache”。

原帖:

在 CentOS 上安装Monit并为 Apache (httpd) 服务设置警报后,该服务不再创建 /var/run/httpd.pid 文件。

httpd 服务运行正常。

最重要的是,好像这还不够,Monit 将服务的状态报告为:执行失败

自然,重新启动此类服务的唯一方法是杀死它,因为“重新启动”脚本看不到任何正在运行的进程。

这些是 /etc/monit.d/monitrc 文件的内容:

“服务 httpd 重启”的输出:

任何帮助将不胜感激。

0 投票
3 回答
2669 浏览

ruby - OSX / Linux 上的 Monit + RVM + Thin

在尝试了几个小时(也尝试了上帝和 Bluepill)之后,我决定在这里问我的问题,因为我完全不知道如何解决这个问题。

我有一个 Rails 应用程序。我想使用 Thin 作为我的应用服务器。我想使用 Monit 来监控我的 Thin 实例。我使用 RVM 作为本地用户来管理我的 Ruby 版本。

我设置了以下监控文件,它可能会做我想做的事,但不会:

如果我只是将其复制/粘贴start program到命令行(在 Monit 之外),它就可以工作。stop program之后停止 Thin 实例也是如此。但是,通过 Monit 运行它似乎不起作用。

以详细模式运行它会-v产生以下结果:

这让我相信 Thin 从不初始化。Monit 是作为什么运行的root吗?因为如果确实如此,那么它显然不会安装正确的 gem,因为我使用的是 RVM 而不是“系统”Ruby。我目前在 OSX 上(但最终会部署到 Linux)——有人知道这可能是什么原因吗?如果Monit是通过root运行的,我怎么能让它使用RVM呢?或者我可以告诉 Monit 执行启动/停止程序Michael:staff吗(我假设它会在 OSX 上?)

任何帮助深表感谢!

0 投票
1 回答
2536 浏览

ruby-on-rails - 使用 monit 监控多个延迟工作的工作人员

我已经阅读了很多关于使用 monit 监控延迟作业的内容。实现非常简单直接。但是,当一个工人不够用时,我如何设置 monit 以确保,比如说,10 个工人不断运行?

0 投票
2 回答
3368 浏览

ruby-on-rails - 杀死挂着的独角兽工作进程?

我目前正在虚拟服务器上运行一个大型 Rails 应用程序。我的设置使用 Unicorn 为 Rails 应用程序提供服务,前面有 nginx 作为代理服务器。

有时我会收到通知,说我的 CPU 使用率已经固定了很长时间。然后我登录并使用 htop 找到行为不良的进程来杀死它。那些行为不端的流程似乎总是独角兽工人。

我想知道的是,是否有一种方法可以设置监视器,或者上帝可以监视这些独角兽的“子进程”,如果它们长时间处于高 CPU 使用率,则将其杀死。我知道如何监控独角兽主进程,因为它将进程 ID 写入 PID 文件。但它永远不是主进程,只有子进程处理不当行为。

0 投票
2 回答
1847 浏览

apache - 监控:在满足服务测试动作条件后延迟下一个监控周期

当我的服务器进入高负载时,Apache 的正常重启似乎使事情恢复了控制。所以我用这个配置设置了monit:

所以每 10 秒,我轮询一次服务器负载,当它超过 5 时,我优雅地重新启动 Apache。但是,这会暂时增加负载,因此我们陷入了死亡螺旋。我希望它在 10 秒后注意到负载为 5 或更多,然后优雅地重新启动 Apache,然后等待5 分钟左右,然后再次检查该特定指标。

有没有办法用monit做到这一点?

0 投票
1 回答
495 浏览

erb - 如何 erb'up monitrc 配置文件

下面是我的delayed_job monitrc 文件,我想将它用作erb 模板,以便我可以动态设置RAILS_ENV 变量。有谁知道该怎么做?

0 投票
2 回答
3504 浏览

rvm - rvm 监控延迟作业

我正在尝试使用monit运行delayed_job,但它无法作为rvm的路径运行(基于每个用户的本地rvm安装)对命令不可用。我的应用程序是带有捆绑程序的 rails2 应用程序。Monit 无法找到捆绑程序。有人对我如何知道 rvm 的监控路径有任何建议吗?

我收到错误

我的配置/delayed_job.monitrc

和 script/delayed_job 可执行文件

0 投票
1 回答
612 浏览

r - 如何使用 Monit 保持 R 脚本运行?

我有一个希望在 Ubuntu 10.10 上连续运行的 R 脚本。我正在尝试设置 Monit 以确保它不会出现故障。当脚本启动时,它会创建一个 pid 文件,其中包含以下行:

然后我用以下几行设置了Monit:

Monit 启动正常,但是当我终止 R 进程时,R 进程没有再次启动。我显然做错了什么。它在启动进程的语法中吗?我注意到文档说 Monit 首先尝试停止程序,但我不知道任何用于停止 R 进程的命令。

可能相关的是,启动程序的上述行在 root 用户的 crontab 中时有效,但从我的用户 crontab 启动时无效。

非常感谢任何指导。

0 投票
1 回答
6008 浏览

bash - 以受限用户身份运行 monit 并使其监视需要 root 权限的进程

我有一个用 Ruby 编写的特定脚本,需要 root 权限。大多数其他进程不需要它,因此很容易在 Monit 中设置。不是这个。

服务器需要监听386,这个端口只有root可以使用。我不会详细说明原因,因为 1) 我不是一个低级的人,2) 到目前为止,使用 sudo 时效果很好。

monit 配置文件很简单,如下所示:

注意:我把 /bin/sh 放在了停止程序中,因为这个进程没有停止程序。

如果我这样说:

它无法启动。没有提示。

也失败了。没有输出。

启动失败。

我还尝试使用> ~/out.log 2 > &1捕获 stderr 和 stdout 重定向输出,但它似乎不起作用。

现在,我在 deploy 用户下启动 monit,这是受限制的。所以,我需要以某种方式以 root 身份运行 ldap 服务器,但事实证明这很难做到。

有人可以启发我吗?

干杯,

中号>