Skip to main content

a pluggable app that runs a full check on the deployment, using a number of plugins to check e.g. database, queue server, celery processes, etc.

Project description

django-health-check

version ci coverage health license

This project checks the health for a number of backends and sees if they are able to connect and do a simple action. For example, check out the Django ORM backend:

class DjangoDatabaseBackend(BaseHealthCheckBackend):
    def check_status(self):
        try:
            obj = TestModel.objects.create(title="test")
            obj.title = "newtest"
            obj.save()
            obj.delete()
            return True
        except IntegrityError:
            raise ServiceReturnedUnexpectedResult("Integrity Error")
        except DatabaseError:
            raise ServiceUnavailable("Database error")

The project is made using some of the same plugin code that the Django admin site uses - so when you have successfully written a new plugin, you register it to the pool, e.g.

plugin_dir.register(DjangoDatabaseBackend)

Install

Add this to urls.py

url(r'^ht/', include('health_check.urls'))

Add required apps:

'health_check',
'health_check_celery',
'health_check_db',
'health_check_cache',
'health_check_storage',

Remember to add dependencies, for example djcelery for Celery. You should have that already, if you have Celery running. You’ll also have to make sure that you have a result backend configured.

If you are using Celery 3, use the health_check_celery3 application instead of health_check_celery.

Set up monitoring

E.g. add to pingdom - django-health-check will return HTTP 200 if everything is OK and HTTP 500 if anything is not working.

Dependencies

Django 1.4+

Project details


Release history Release notifications | RSS feed

This version

1.2.1

Download files

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

Source Distribution

django-health-check-1.2.1.tar.gz (9.3 kB view details)

Uploaded Source

File details

Details for the file django-health-check-1.2.1.tar.gz.

File metadata

File hashes

Hashes for django-health-check-1.2.1.tar.gz
Algorithm Hash digest
SHA256 3d1045c1e02e250f146a667b37627f9df2f6970e67b38d6906ea9368213186f9
MD5 e9ef512b901c7a1681aec8a60b140c63
BLAKE2b-256 5978c32119d591ec00a3718099e28ba557539e79624133eafab672acb2f515e0

See more details on using hashes here.

Provenance

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