标签: monit

如何将 monit 配置为仅警报而不是重新启动?

我正在寻找一种方法,让 monit 仅在特定进程出现故障时发出警报。例如:

check process apache
  with pidfile /var/run/httpd.pid
  group www
  start program = "/usr/sbin/apachectl start"
  stop  program = "/usr/sbin/apachectl stop"
  alert operations@example.com with reminder 5
Run Code Online (Sandbox Code Playgroud)

使用该配置,apache 将随着进程消失而重新启动。而不是发生这种情况,我想保持低调,直到有人可以手动干预。

对于那些好奇为什么的人:

我们的生产环境使用 monit 来控制应用程序。我们的非生产环境没有。这导致了一个问题,因为我们的开发人员更改了特定应用程序的启动方法。在它进入生产环境之前,它一直通过我们的非生产环境,monit 最终导致应用程序关闭,因为它没有在预生产中被捕获。

我想在非生产环境中设置 monit,这样我们就可以捕捉到这样的故障,但由于它不是关键任务,我们不需要自动重启服务。

linux monit

6
推荐指数
1
解决办法
4880
查看次数

vsftpd 不创建 monit 所需的 pid 文件

我想从 CentOS 5.4 上的 monit 监控 vsftpd 服务器,但不知何故 vsftpd 不会在 /var/run (也不在任何其他地方)创建 pid 文件。

对于此发行版,这种行为是否正常?我应该如何配置 monit 来监视 vsftpd,我应该在 /etc/init.d/vsftpd 脚本中手动创建 pid 文件吗?

谢谢。

monitoring ftp service monit

5
推荐指数
1
解决办法
5294
查看次数

使用 monit 监控 nfs

我想使用 Monit 监控 NFS 挂载和 NFS 服务器进程。

在服务器上,我需要一个 PID 文件,但我似乎找不到使用现有配置文件创建它的方法。有没有办法做到这一点,或者有人以不同的方式监视服务器(检查端口 53 是否处于活动状态等)。

在客户端,我想让 Monit 只是在 NFS 挂载中查找特定文件,如果它可以访问,一切都很好。问题是,如果 NFS 服务器确实出现故障,文件请求通常会挂起(甚至可能无限期,不确定)。如何使用 monit 解决这个问题?

任何配置示例将不胜感激!

nfs monit

5
推荐指数
1
解决办法
5363
查看次数

monit 认为什么是内存使用量?

曾经可以让 monit 监控内存使用情况……

检查系统 foo
  如果内存使用率 > 95% 则警报

它使用空闲 RAM 还是空闲 -/+ 缓冲区/缓存?(或者是其他东西?)

#免费-m
             缓存的已用空闲共享缓冲区总数
电话:998 851 146 0 114 70
-/+ 缓冲区/缓存:666 332
掉期:2047 54 1993

memory monit memory-usage

5
推荐指数
1
解决办法
2736
查看次数

Monit 无法启动:“无法将‘<主机名>’转换为 FQDN 名称——提供的节点名或服务名”

我在 OS X 10.7 上安装了 monit-5.3.2,但一直无法运行。

当我运行sudo monit -t我得到:

monit:无法将“hakan”转换为 FQDN 名称——提供了节点名或服务名,或未知
控制文件语法正常

当我运行sudo monit restart 所有我得到:

monit:无法将“hakan”转换为 FQDN 名称——提供了节点名或服务名,或未知
monit:无法连接到 monit 守护进程。你是从 http 支持开始的吗?

'hakan' 是我的主机名。

这是我的/etc/monitrc

设置守护进程 60
设置 idfile /tmp/monit.id
设置状态文件 /tmp/monit.state
设置邮件服务器本地主机
设置警报系统@abcd.net
设置 httpd 端口 2812 并使用地址 localhost

有任何想法吗?我没有运气在谷歌上找到这个。提前致谢。

mac-osx monit osx-lion

5
推荐指数
1
解决办法
1万
查看次数

Monit — 守护非守护进程?

我有一个 ruby​​ 进程,它不作为守护进程运行(它在前台运行),但可以生成一个 pid 文件。我的问题是 Monit 总是希望监视后台/守护进程吗?

我过去使用过 Bluepill,这是默认行为:

请注意,由于我们指定了一个 PID 文件和启动命令,所以 bluepill 假定该进程将自行守护进程。如果我们想让 bluepill 为我们守护它,我们可以这样做(注意我们仍然需要指定一个 PID 文件): process.daemonize = true

monit 有类似的东西吗?AFAIK,只要进程(守护进程与否)可以创建一个 PID 文件,Monit 就会检测它是否对自身进行守护进程并且不会对其进行守护进程,反之亦然......

谢谢

unix ubuntu monit

5
推荐指数
1
解决办法
2527
查看次数

Monit - 如何在停止和启动之间添加延迟

我想知道是否可以在停止/启动方法之间添加延迟。这主要是因为它需要至少 10 秒的延迟才能关闭所有打开的套接字连接并优雅地关闭服务器套接字以重新启动。

这是我的监控脚本

set logfile /var/log/monit.log
check process test.sh with pidfile /home/svcs/test/pid/app.pid
start program = "/etc/init.d/test.sh start" with timeout 60 seconds
stop program = "/etc/init.d/test.sh stop" with timeout 60 seconds
if failed host xx.xx.com port 443
type tcpSSL protocol http with timeout 15 seconds retry 3 then restart
alert xx@xx.com
Run Code Online (Sandbox Code Playgroud)

谢谢

monit

5
推荐指数
1
解决办法
2383
查看次数

如果条件在 Monit 中匹配,如何重新启动并发出警报?

条件匹配时如何做多件事?例如,如果我想重新启动一个进程并发送警报电子邮件。我知道我可以用两条单独的线来完成,但我可以将它们组合起来吗?

if cpu > 95% for 2 cycles then restart
if cpu > 95% for 2 cycles then alert
Run Code Online (Sandbox Code Playgroud)

monitoring monit system-monitoring

5
推荐指数
1
解决办法
2366
查看次数

如何配置 Monit 以与 Puma Ruby Web Server 一起使用?

我刚开始使用 Monit 并且没有很多系统知识。我有一个在Puma 上运行的 Ruby 应用程序。如果 Puma 死机,我想使用 Monit 自动重新启动它。我目前正在使用Puma 提供的 Capistrano 2 配方,它使用控制脚本而不是将 PID 输出到文件。

有没有办法配置monit来检查Puma的状态看是否应该重启?

ruby monit

5
推荐指数
1
解决办法
2043
查看次数

我需要用 monit 监控日志文件,如果文件没有改变 monit 会发出警报

我需要帮助。我正在查看 Monit 文档,我需要帮助。我在那里找不到我的答案。我需要监视服务的日志文件,如果该日志文件的大小停止增加,或者日志文件中的某些内容停止输入(日志文件每秒收到大约 20 条新消息。它有轮换)然后监视将通过电子邮件提醒我。这个真的很需要!

谢谢!

log-files monit alert ubuntu-12.04

4
推荐指数
1
解决办法
3429
查看次数