A fork of https://github.com/adriaaah/monit-dashboard that has been updated for latest web.py and python3
Find a file
Adrià 0e115ee1fe Initial commit
I was working in a private repo and decided to switch to a public one
without keeping the old commits.
2017-01-07 12:46:50 +01:00
bin Initial commit 2017-01-07 12:46:50 +01:00
conf Initial commit 2017-01-07 12:46:50 +01:00
static Initial commit 2017-01-07 12:46:50 +01:00
templates Initial commit 2017-01-07 12:46:50 +01:00
tests Initial commit 2017-01-07 12:46:50 +01:00
.gitignore Initial commit 2017-01-07 12:46:50 +01:00
__init__.py Initial commit 2017-01-07 12:46:50 +01:00
LICENSE Initial commit 2017-01-07 12:38:10 +01:00
README.md Initial commit 2017-01-07 12:46:50 +01:00

Monit Dashboard

Description

Python web application to get a dashboard of a bunch of Monit servers at a glance.

How does it work?

Every 300 seconds the application ask for the data served by the Monit built-in web server in a XMl report from each configured server. Then, thanks to the built-in web server, it is displayed in a single HTML page.

Pre requisites

Debian GNU/Linux

Web.py framework

  • apt install python-webpy

Python libraries

  • apt install python-xmltodict python-requests

CentOS

Python PIP

  • yum install epel-release
  • yum install python-pip

Web.py framework

  • pip install web.py

Python libaries

  • yum install python-requests python-xmltodict python-simplejson

Requisites

  • Config file conf/servers.json prior run. You might find a sample file at conf/servers.json.example.
  • Please see Config section for further details.

Run

./bin/monit-dashboard.py

By default, it will be reachable at http://localhost:8080. You might change the port by adjusting app.run(port=8080) in bin/monit-dashboard.py file.

References

Config

  • Placed in conf/servers.json
  • Sample settings as follows:
{
  "My server to monit": {
    "url": "http://example.com:2812",
    "user": "monit",
    "passwd": "*****"
  }
}

Credits

License

AGPL