Linux/Unix 中简单但可用于生产的进程监视器

Linux/Unix 中简单但可用于生产的进程监视器

我正在寻找简单过程监视器在流行的 VPS 中为我​​的帐户。我喜欢 Supervisor 和 Monit,但它们对我来说似乎有点过头了。

我想要某个东西

  1. 作为守护进程运行(因此我的 VPS 帐户可以在启动时启动它,也可以通过 cron“启动”,以防监控自身下跌降落)
  2. 监控将内容生成为子进程(例如 Supervisor)或者通过执行轮询返回 true 或 false 的命令(类似 BASH if 语句)
  3. 两个都简单的使用(需要最低配置)和生产稳定 (似乎很少有软件能够同时满足这两个要求)
  4. 适用于托管 VPS-运行于用户模式,最小内存使用量

答案1

您正在寻找该程序守护进程工具(如果这就是你所说的“主管”监控者的意思,那么请随意忽略我的其余回答。)

daemontools 是用于管理 UNIX 服务的工具集合。

supervise 监控服务。它启动服务,并在服务停止后重新启动服务。设置新服务很容易:supervise 所需的只是一个包含运行该服务的运行脚本的目录。

multilog 将错误消息保存到一个或多个日志中。它可以选择性地为每行添加时间戳,并为每个日志包含或排除与指定模式匹配的行。它会自动轮换日志以限制使用的磁盘空间量。如果磁盘已满,它会暂停并重试,而不会丢失任何数据。

它简单、灵活且功能强大。基本思想是,对于您要运行的每项服务,daemontools 都会启动一个子进程(称为supervise),然后由该子进程启动您的服务。supervise 配置服务的环境变量用户 ID/组 ID,然后保持服务的标准输入和标准输出打开,以便它可以发送信号。服务不需要守护进程,您也不必管理 pid 文件。主服务不需要 root 权限即可运行,您可以将受监控服务的目录放在任何地方。

答案2

简单的答案是您已经有一个 - 每个 Unix 系统都有 - init 和 /etc/inittab。

init 的工作是生成 inittab 中列出的进程,监视它们,并在它们退出时重新启动它们。

答案3

相关内容