Skip to main content

Simple server usage monitor writen with flask

Project description

Server manager

is a simple server monitoring web dashboard with a couple of management features.

Installation

With pip

pip install server-manager

Build from source

git clone https://gitlab.com/serverman-group/serverman
cd serverman
python -m build
pip install .

Running the dashboard

To run the dashboard you have to use gunicorn (installed as a dependency)

run syntax:

python -m gunicorn -b host:port servermanager.wsgi:app

if you have gunicorn installed as a system-wide package you can simply use gunicorn removing python -m

run command example:

python -m gunicorn -b 0.0.0.0:8080 servermanager.wsgi:app

Explanation

python -m runs a python package, in this case gunicorn, the -b flag specifies bind, --bind can also be used , this binds the wsgi server to a certain host and port, in this case 0.0.0.0 and port 8080.

The host 0.0.0.0 is used so the server can be accessible network wide. The port really can be specified to anything except ports like 80 or 443, that require escalated privileges. For the server to be accessible on port 80 or 443 both the flask and gunicorn documentations recommend using a reverse proxy like apache httpd and nginx.

Accessing the webpage

To see the webpage simply go to ip address of the device the dashboard is running on.
example: localhost:8080 or 192.168.xx.xx:8080. If you are using a reverse proxy setup as mentioned before you can access the dashboard from the reverse proxy server ip and port (this can be the same machine running the dashboard) , make sure that if the reverse proxy server and the dashboard are running on the same machine, they are not running on the same port.

Once you open the webpage you will see this:
Home screen view

This is the start page of the serverman dashboard. Once you navigate to one of the links you will be prompted to log in:

login page
In this login page you are required to log in as one of the system users with their username and password to proceed with the server's monitoring and management.

After the login the links do not redirect you to login anymore and you can start monitoring. The login system is session based and made with flask-login.

This app features a

  1. dashboard
  2. settings
  3. process management

page.

Short description for each page

Dashboard

The dashboard page provides the ability to view system metrics like cpu clock speed, memory and swap usage.

Systime block

systime

Dashboard settings

The dashboard settings page or just settings allows you to make simple adjustments to what the dashboard page displays. The page also allows the the interval at witch the information to be updated. This can really help lower end systems like older raspberry pi's.

Processes

The processes tab shows the currently running processes and also kill them.

The update interval of the processes table can also be adjusted in the settings page.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

server_manager-0.0.38.tar.gz (238.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

server_manager-0.0.38-py3-none-any.whl (160.7 kB view details)

Uploaded Python 3

File details

Details for the file server_manager-0.0.38.tar.gz.

File metadata

  • Download URL: server_manager-0.0.38.tar.gz
  • Upload date:
  • Size: 238.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for server_manager-0.0.38.tar.gz
Algorithm Hash digest
SHA256 9907218820b5f5d5deb829b0326bd7276a6b53c089f5e9bbb6c04a0f8631f978
MD5 9adcf1a4ad247a073eea106b71c9a185
BLAKE2b-256 cddbb9c945bb892e304f235ae7e3d7b45cdc7b12d1c9f7dd0a8f29054df17c38

See more details on using hashes here.

File details

Details for the file server_manager-0.0.38-py3-none-any.whl.

File metadata

File hashes

Hashes for server_manager-0.0.38-py3-none-any.whl
Algorithm Hash digest
SHA256 47167cdfe505d408e1dca75a06f8d780bc418b877a727c5ec85f4995a0b4e712
MD5 1c43bca57c94e8e0f5cc48fa326c6384
BLAKE2b-256 5ba04af6cad309bb998720741f505b707d86e2104b37eae91adc98049942e1d5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page