monit配置文件

监控模式:(MONITRING MODE)

Monit支持三种监控模式,

active--Monitj监控一个服务,为了防止一系列问题,Monit会执行以及发送警报,停止,启动,重启,这是一个缺省的模式

passive--MOnit监控一个服务,不会尝试去修复这个问题,但还是会发送警报

manual--Monit监控进入active模式,通过monit的控制,比如在控制台执行命令,比如 Monit start sybase

  (Monit will call sybase‘s start method and enable monitoring)

ALERT MESSAGES

Monit会发送一个邮件提醒,在下列情况

o A service timed out
 o A service does not exist
 o A service related data access problem
 o A service related program execution problem
 o A service is of invalid object type
 o A program status failed
 o A icmp problem
 o A port connection problem
 o A resource statement match
 o A file checksum problem
 o A file size problem
 o A file/directory timestamp problem
 o A file/directory/filesystem permission problem
 o A file/directory/filesystem uid problem
 o A file/directory/filesystem gid problem
 o An action is done per administrator‘s request

Monit 会发送一个警报只要被监控对象发生了改变,这些对象包括

 o Monit started, stopped or reloaded
 o A file checksum changed
 o A file size changed
 o A file content match
 o A file/directory timestamp changed
 o A filesystem mount flags changed
 o A process PID changed
 o A process PPID changed

警报状态有两种形式

Global -- common for all services

local -- per service

在没一种形式下你都可以发送多个警报状态,换句话说你可以发懊恼过不同的邮件到不同的地址

Setting a global alert statement

{

如果在监控服务发生了改变,Monit将会发送一个警报到全局列表的所有的接受者,下面是全局警报的语法

SET ALERT mail-address [[NOT]{EVENTS}]  [MAIL-FORMAT {mail-format}] [REMINDER number]

简单使用:set alert [email protected]

EVENTS,MAIL-FORMAT,REMINDER看下面使用用法

Setting a local alert statement

每一个服务可以有他自己的接收列表

ALERT mail-address [[NOT]{EVENTS}]  [MAIL-FORMAT {mail-format}] [REMINDER number]

没有了SET就成了局部的了

或者NOALERT  mail-address

如果你只想接受某些服务的某些警报信息的话,比如你只想接受timeout或者nonexist事件,那么你可以这么写

check process myproc with pidfile /var/run/my.pid
   alert [email protected] only on { timeout, nonexist }
   ...

你可以指定除去某些事件外发送警报信息,比如你想监听所有时间除了instance事件,那么你可以这么写

 check system myserver
   alert [email protected] but not on { instance }
   ...

相当于

  alert [email protected] on { action
                      checksum
                      connection
                      content
                      data
                      exec
                      fsflags
                      gid
                      icmp
                      invalid
                      nonexist
                      permission
                      pid
                      ppid
                      resource
                      size
                      status
                      timeout
                      timestamp
                      uid
                      uptime }

一个instance事件是指Monit程序启动或者停止

你也可以根据事件的不同来发送给不同的邮件

 alert [email protected] { nonexist, timeout, resource, icmp, connection }
 alert [email protected] on { checksum, permission, uid, gid }
 alert [email protected]

可以在邮件过滤器中使用的事件如下:

action,checksum, connection, content, data, exec, fsflags, gid, icmp,instance, invalid, nonexist, permission, pid, ppid, resource, size, status, timeout, timestamp, uid, uptime

你可以使用

noalert [email protected]来进行不接受警报的邮箱
set alert [email protected]

 check process myfoo with pidfile /var/run/myfoo.pid
   ...
 check process mybar with pidfile /var/run/mybar.pid
   alert [email protected] only on { timeout }
$EVENT  
  
     A string describing the event that occurred. The values are  
     fixed and are:  
  
     Event:    | Failure state:           | Success state:                
     -------------------------------------------------------------------  
     ACTION    | "Action done"            | "Action done"                
     CHECKSUM  | "Checksum failed"        | "Checksum succeeded"          
     CONNECTION| "Connection failed"      | "Connection succeeded"        
     CONTENT   | "Content failed",        | "Content succeeded"  
     DATA      | "Data access error"      | "Data access succeeded"      
     EXEC      | "Execution failed"       | "Execution succeeded"        
     FSFLAG    | "Filesystem flags failed"| "Filesystem flags succeeded"  
     GID       | "GID failed"             | "GID succeeded"              
     ICMP      | "ICMP failed"            | "ICMP succeeded"              
     INSTANCE  | "Monit instance changed" | "Monit instance changed not"  
     INVALID   | "Invalid type"           | "Type succeeded"              
     NONEXIST  | "Does not exist"         | "Exists"                      
     PERMISSION| "Permission failed"      | "Permission succeeded"        
     PID       | "PID failed"             | "PID succeeded"  
     PPID      | "PPID failed"            | "PPID succeeded"  
     RESOURCE  | "Resource limit matched" | "Resource limit succeeded"    
     SIZE      | "Size failed"            | "Size succeeded"              
     STATUS    | "Status failed"          | "Status succeeded"              
     TIMEOUT   | "Timeout"                | "Timeout recovery"            
     TIMESTAMP | "Timestamp failed"       | "Timestamp succeeded"        
     UID       | "UID failed"             | "UID succeeded"              
     UPTIME    | "Uptime failed"          | "Uptime succeeded"  
  
    $SERVICE  
  
     The service entry name in monitrc  
  
    $DATE  
  
     The current time and date (RFC 822 date style).  
  
    $HOST  
  
     The name of the host Monit is running on  
  
    $ACTION  
  
     The name of the action which was done. Action names are fixed  
     and are:http://write.blog.csdn.net/postedit/9564261  
  
     Action:  | Name:  
     --------------------  
     ALERT    | "alert"  
     EXEC     | "exec"  
     RESTART  | "restart"  
     START    | "start"  
     STOP     | "stop"  
     UNMONITOR| "unmonitor"  
  
    $DESCRIPTION  
  
     The description of the error condition  

来自为知笔记(Wiz)

原文地址:https://www.cnblogs.com/pycode/p/9495882.html

时间: 2024-10-10 07:18:46

monit配置文件的相关文章

如何借助Monit搭建服务器监控系统?(1)

许多Linux管理员依赖一种集中式远程监控系统(比如Nagios或Cacti),检查网络基础设施的健康状况.虽然集中式监控系统为管理员在处理许多主机和设备时简化了工作,但专用的监控设备显然成了单一故障点;要是监控设备出现故障或者由于其他原因(比如硬件坏掉或网络停运)而联系不上,你就失去了可见性,无法了解整个基础设施的状况. 想为监控系统增添冗余机制,一个办法就是起码在网络上任何关键/核心服务器上安装独立的监控软件(作为一条退路).那样万一集中式监控系统坏掉,你仍能够通过备用的监控工具,保持可见性

使用M/Monit进行可视化集中进程管理

一:前言 Monit是一个开源监控管理工具(类似supervisor),能够监控linux系统的负载.文件.进程等.当系统负载过高.监控文件被篡改.进程异常退出时,能够发送邮件报警,并能够自动启动或关闭异常进程.Monit内嵌web界面,能够看到当前主机上的监控项状态. M/Monit是一个集中式管理多台Monit的可视化工具,也是收费工具,可以免费试用30天. 二:规划 M/Monit(集中管理)  192.168.0.1 Monit(监控机)      192.168.0.2 Monit(监

Monit : 开源监控工具介绍

· Monit 简介 Monit是一个轻量级(500KB)跨平台的用来监控Unix/linux系统的开源工具.部署简单,并且不依赖任何第三方程序.插件或者库. Monit可以监控服务器进程.文件.文件系统.网络状态(HTTP/SMTP等协议).远程主机.服务器资源变化等等. 并且可以设定资源变化后需要做的动作,比如服务失败后自动重启,邮件告警等等. Monit内置了WEB UI,可以一目了然地了解监控项的情况.Monit是监控本机服务的工具,M/Monit是其配套产品用以对Monit统一管理,但

用monit监控系统关键进程

monit是一款功能强大的系统状态.进程.文件.目录和设备的监控软件,用于*nix平台, 它可以自动重启那些已经挂掉的程序,非常适合监控系统关键的进程和资源,如:nginx.apache.mysql和cpu占有率等.而监控管理Python进程,常用的是supervisor,后续会另外撰文介绍. 下面分别介绍monit的安装.配置和启动. 安装 在debian或ubuntu上安装monit非常方便,通过下面的命令 sudoapt-getinstall monit 即可,其它*nix上也很简单,下载

监控软件monit使用

安装:sudo apt-get install monit 配置文件:sudo vim /etc/monit/monitrc主要配置下面选项:SMTP服务器用于外发邮件,这里使用的是AWS Simple Mail Serviceset mailserver email-smtp.us-west-xx.amazonaws.com port 587username "AKIAJxxxxxxxxxxxxxxxx" password "Axxxxxxxxxxxxxxxxxxxxxxx

MMonit监控

系统:centos7_x86_641.下载预编译的二进制文件mmonit和monit       http://mmonit.com/download/2.还需要安装一些库:# yum install glibc.i686#  yum install libraries# yum install libpam.so.03.解压,放到:/usr/local目录下: /usr/local/mmonit-3.3//usr/local/ monit-5.10/ 4.开启MMonit服务端:/usr/lo

Linux 上使用 Gmail SMTP 服务器发送邮件通知

导读 假定你想配置一个 Linux 应用,用于从你的服务器或桌面客户端发送邮件信息.邮件信息可能是邮件简报.状态更新(如 Cachet).监控警报(如 Monit).磁盘时间(如 RAID mdadm)等等.当你要建立自己的 邮件发送服务器 传递信息时 ,你可以替代使用一个免费的公共 SMTP 服务器,从而避免遭受维护之苦. 谷歌的 Gmail 服务就是最可靠的 免费 SMTP 服务器 之一.想要从应用中发送邮件通知,你仅需在应用中添加 Gmail 的 SMTP 服务器地址和你的身份凭证即可.

使用monit搭建一个监控系统

上周用monit搭建或者说定制了一个监控系统,来监控服务器发生事情.当然了主要是监控异常,因为我们的产品属于服务器类型,很多进程都daemon,要不停的运行.我们搭建监控目的不过是出现问题能够及时的知道,平时可从web UI上看到整个系统的状况,同时它本身要轻量级,不要影响性能.当然了类似的产品很多了,比如Ganglia,我在老科长波哥曾经搭建过一个Ganglia系统监控科室十几台服务器,让我很是崇拜.本文重点介绍monit.                      monit是一个可以监控系

Monit监控工具的使用

官方网址:http://mmonit.com/monit/ 当前版本:5.10 源代码包:http://mmonit.com/monit/dist/ 二进制包:http://mmonit.com/monit/dist/binary/ 概述 Monit是一款功能非常丰富的进程.文件.目录和设备的监测软件,适用于Linux/Unix平台.它可以自动修复那些已经停止运作的程序,特别适合处理那些由于多种原因导致的软件错误.监控系统关键的进程和资源.同时Monit 包含一个内嵌的 HTTP(S) Web