FeaturesWP CloudPricingEE CLIContactMy Account

Features

Team Access & User Permissions

Server Setup & Management

Site Creation & Management

Deployments & Developer Tools

Firewall Protection

Speed & Caching

Backups & Recovery

Logs & Monitoring

Create WP Cloud Sites

All Features

Read Documentation

Install

Installation Guide

FAQ

Roadmap

Explore EE CLI

Resources

Commands

Handbook

Blog

Community

Forum

EasyExperts

Tutorials

Subscribe

Github

CLEAR

Start For Free

separator Tutorials separator Monitoring separator Latest Monit setup on Ubuntu

Topics

On this page

Install

apt-based

Binary Install

Monit Config File

Verify

Monit-Graph

Install monit-graph

Config File

Setup Cron

View Graphs

TODO

Latest Monit setup on Ubuntu

Install

apt-based


			apt-get install monit
		

Following installs Monit 5.3 on Ubuntu 12.04. Which is very old!

Binary Install

Go to http://mmonit.com/monit/#download and pick correct binary for your system. Following lines will install Monit 5.14 for Ubuntu 64-bit.


			cd ~
wget http://mmonit.com/monit/dist/binary/5.14/monit-5.14-linux-x64.tar.gz
tar zxvf monit-5.14-linux-x64.tar.gz
cd monit-5.14/
cp bin/monit /usr/bin/monit
mkdir /etc/monit
touch /etc/monit/monitrc
chmod 0700 /etc/monit/monitrc 
ln -s /etc/monit/monitrc /etc/monitrc
wget https://gist.githubusercontent.com/rahul286/9975061/raw/1aa107e62ecaaa2dacfdb61a12f13efb6f15005b/monit -P /etc/init.d/
chmod u+x /etc/init.d/monit
echo "START=yes" > /etc/default/monit
monit -t
		

Config

Monit Config File

Add/Update following in /etc/monit/monitrc


			#Monitoring Interval in Seconds
set daemon  60

#Enable Web Access
set httpd port 2812
     allow admin:easyengine

#Event Queue for 5000 events
set eventqueue basedir /var/monit slots 5000

#MySQL Monitoring
check process mysqld with pidfile "/var/run/mysqld/mysqld.pid"              
    if cpu > 80% for 2 cycles then alert

#PHP-FPM
check process php5-fpm with pidfile "/var/run/php5-fpm.pid"
    if cpu > 80% for 2 cycles then alert

#Nginx
check process nginx with pidfile "/var/run/nginx.pid"
    if cpu > 80% for 2 cycles then alert

#System Monitoring 
check system PUT_YOUR_HOSTNAME_HERE
    if memory usage > 80% for 2 cycles then alert
    if cpu usage (user) > 70% for 2 cycles then alert
        if cpu usage (system) > 30% then alert
    if cpu usage (wait) > 20% then alert
    if loadavg (1min) > 6 for 2 cycles then alert 
    if loadavg (5min) > 4 for 2 cycles then alert
    if swap usage > 5% then alert

check filesystem rootfs with path /
       if space usage > 80% then alert
set mailserver localhost
set alert you@example.com

##mmonit (optional)
#set mmonit http://user:pass@IP:port/collector
		

You may also wish to change username adminand password easyengine. Also, change numbers 6 and 4 in loadavg lines based on number of CPU cores on your system.

Start

First test your config using monit -t command. Then start monit using service monit start

Verify

Run command  monit status, it should something like:


			The Monit daemon 5.13 uptime: 2m 

System 'example.com'
  status                            Running
  monitoring status                 Monitored
  load average                      [0.48] [0.40] [0.81]
  cpu                               0.0%us 0.0%sy 0.0%wa
  memory usage                      8276900 kB [25.1%]
  swap usage                        1192 kB [0.0%]
  data collected                    Thu, 03 Apr 2014 10:41:45

#many more lines...
		

You may also open example.com:2182 in your browser to use web-based interface.

Monit-Graph

You can use commercial version M/Monit for a lot many features or free script monit-graph

Install monit-graph


			cd /var/www/example.com/htdocs
git clone https://github.com/danschultzer/monit-graph mg
cd mg
chmod -R 0777 data
chmod 0644 data/index.php
		

Config File

Open config.php and adjust following values:


			"url" => "localhost:2812",   
"url_ssl" => false,
"http_username" => "admin",
"http_password" => "easyengine",
		

Setup Cron

Add following line to cron:


			* * * * * php /var/www/example.com/htdocs/mg/cron.php >> /var/log/monit-graph.log
		

View Graphs

You can open http://example.com/mg in browser to see visual graphs!

TODO

  1. monit check program for custom script to monitor php5-fpm status page and nginx status page.
  2. Explore: https://github.com/perusio/monit-miscellaneous/blob/master/php-fpm-tcp
  3. Explore: https://github.com/regilero/check_phpfpm_status

Monitoring

PREVIOUS

NewRelic Setup for Ubuntu Server with PHP, FPM, Nginx and MySQL

NEXT


Features

Useful Links

Product

Other Products

Subscribe for curated product updates, tips, and announcements.

"*" indicates required fields

LinkedIn

This field is for validation purposes and should be left unchanged.

Email*

SIGN ME UP

Δ


© rtCamp, since 2009. All rights reserved.

Powered by