Skip to main content

host utilities for django projects

Project description

django-hostutils

PyPI Downloads

OpenSSF Best Practices

PyPI - Python PyPI - Django

Django hostutils is a collection of utilities to provide information and metrics for hosts running a Django project. Data is available via included Bootstrap 5 templates and custom views/templates can also be used. Host metric data includes:

  • Host OS, release, uptime
  • CPU count and utilization
  • Memory usage
  • Disk partations and utilization
  • Processes running, idle, sleeping
  • Network interfaces and connections

Code Quality

Workflow Description Status
Bandit security checks Bandit
Black code formatting Black
CodeQL security analysis CodeQL
Coveralls code coverage status Coverage Status
Isort python import ordering Isort
Mypy static type checking Mypy
Pytest unit testing Pytest
Radon code complexity analysis Radon
Ruff static code analysis Ruff
Safety dependency scanner Saftey

Code Coverage:

Coverage Status

Dashboard: https://coveralls.io/github/djangoaddicts/django-hostutils


Documentation

Documentation Status

Full documentation can be found on: https://django-hostutils.readthedocs.io/en/latest/index.html

Documentation source files are available in the docs folder.


Installation

  • install via pip:

    pip install django-hostutils
    
  • add the following to your INSTALLED_APPS in settings.py:

    djangoaddicts.hostutils
    
  • add the following to your project-level urls.py:

    path("hostutils/", include("djangoaddicts.hostutils.urls"), ),
    

Usage

Included Views

Several pages are available. If you have a Bootstrap 5 nav-menu you can add the following snippet in your navbar where appropriate:

{% include 'hostutils/bs5/snippets/hostutils_nav_menu.htm' %}

Individual pages can also be linked directly:

  • Host overview page:

    {% url 'hostutils:host_details' %}
    
  • CPU stats page:

    {% url 'hostutils:host_cpu' %}
    
  • Disk stats page:

    {% url 'hostutils:host_disk' %}
    
  • Memory stats page:

    {% url 'hostutils:host_memory' %}
    
  • Network stats page:

    {% url 'hostutils:host_network' %}
    
  • Process stats page:

    {% url 'hostutils:host_process' %}
    

Custom Views

Custom views/templates can be used to override the Bootstrap 5 templates provided by default for GUI views. In your views, import the desired views(s) from hostutils and create a class that inherits the desired hostutils view.

  • Here is an example of creating a custom view using ShowHost:

    from djangoaddicts.hostutils.views import ShowHost
    
    class MyCustomShowHostView(ShowHost):
        template_name = "my_custom_template.html"
        title = "My Custom Title"
    

License

django-hostutils is licensed under the GNU-3 license (see the LICENSE file for details).

https://github.com/djangoaddicts/django-hostutils/blob/docs/LICENSE


Contributing

To contribute to django-hostutils, please see Contributing

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

django-hostutils-0.0.13.tar.gz (53.5 kB view hashes)

Uploaded Source

Built Distribution

django_hostutils-0.0.13-py3-none-any.whl (49.2 kB view hashes)

Uploaded Python 3

Supported by

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