A fork of https://github.com/adriaaah/monit-dashboard that has been updated for latest web.py and python3
959946f3e8
Sort the service items based on the errors Errors will be listed on top of each list for the sake of clarity when browsing the dashboard. |
||
---|---|---|
bin | ||
conf | ||
static | ||
templates | ||
tests | ||
.gitignore | ||
__init__.py | ||
LICENSE | ||
README.md |
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 atconf/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
- web.py 0.3 tutorial
- Learn Python the hard way, ex 50
- A template example
- How to change HTTP server port
Config
-
Placed in
conf/servers.json
-
Sample settings as follows:
{ "My server to monit": { "url": "http://example.com:2812", "user": "monit", "passwd": "*****" } }
Credits
- Original idea
- Frontend support: Júlia Vázquez
- Icons
- Accordion menu