0e115ee1fe
I was working in a private repo and decided to switch to a public one without keeping the old commits.
2.2 KiB
2.2 KiB
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 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