A fork of https://github.com/adriaaah/monit-dashboard that has been updated for latest web.py and python3
Find a file
2019-11-24 17:25:21 +04:00
bin add route to download report file 2019-11-24 17:25:21 +04:00
conf Fix #1 - Typo in example config file 2017-03-01 09:03:03 +01:00
static customize the chart legent texts 2019-10-25 19:48:24 +04:00
templates chart container positioning 2019-10-04 19:57:08 +04: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 Beautify 2017-01-07 13:53:08 +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 (hardcoded) 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