A fork of https://github.com/adriaaah/monit-dashboard that has been updated for latest web.py and python3
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
KemoNine de8b52b899 Add timeout to dashboard, show offline status if node times out for web api 11 months ago
bin Add timeout to dashboard, show offline status if node times out for web api 11 months ago
conf Fix #1 - Typo in example config file 4 years ago
static Beautify 2 years ago
templates Beautify 2 years ago
tests Initial commit 5 years ago
.gitignore changes based on feedback 2 years ago
LICENSE Initial commit 5 years ago
README.md Merge pull request #11 from saravanan30erd/download_report 2 years ago
__init__.py Initial commit 5 years ago


Monit Dashboard


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


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
  • pip install xlsxwriter


  • 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.



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.



  • Placed in conf/servers.json

  • Sample settings as follows:

    "My server to monit": {
      "url": "http://example.com:2812",
      "user": "monit",
      "passwd": "*****"