Skip to main content

Exception Logger with AI Suggestions for Django

Project description

ExceptBot: Django Exception Logger with AI Suggestions for Fixing

Imagine: An exception is thrown on your site and it is critical.
You need a solution fast.

ExceptBot is a Django middleware application that captures and logs exceptions that occur within your Django project. Site admins can quickly view exceptions, the code where the problem originated, and with a button-click feed all that info to ChatGPT to get a possible solution.

Features

  • Automatically logs exceptions, including:
    • The Python Code and line where the exception occurred
    • The full stack trace
    • URL path, Exception type, timestamp, user (if authenticated)
  • Gets AI Suggestions
    • Sends all relevant info to ChatGPT API:
      • Stack trace
      • Source code producing the exception
      • line causing the exception
  • Superuser-restricted views to:
    • View a list of unresolved exceptions
    • Mark exceptions as resolved
    • View detailed information for each exception
    • Tracks which superuser resolved an exception and when

Installation

  1. Install the ExceptBot library
pip3 install exceptbot
  1. Add 'ExceptBot' to INSTALLED_APPS in your project's settings.py:
INSTALLED_APPS = [
    # ...
    'exceptbot',
    # ...
]
  1. Include the middleware in the MIDDLEWARE list in your settings.py:
MIDDLEWARE = [
    # ...
    'exceptbot.middleware.ExceptBotMiddleware',
    # ...
]
  1. Include the ExceptBot URLs in your project's urls.py:
from django.urls import path, include

urlpatterns = [
  # ...
  path('exceptbot/', include('exceptbot.urls')),
  # ...
]

Run migrations to create the necessary database tables and set up static files

$ python3 manage.py makemigrations exceptbot
$ python3 manage.py migrate exceptbot
$ python3 manage.py collectstatic --no-input

Usage

Once integrated into your Django project:

  • setup the Chat GPT connection (When you have an account, your API key is here)
  • Any exception that occurs will be automatically logged by the middleware.
  • Superusers can navigate to /exceptbot/ to view a list of unresolved exceptions.
  • Click on an exception to view its detailed information.
  • Superusers can mark exceptions as resolved, which will also record who resolved it and when.

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

exceptbot-1.0.11.tar.gz (283.3 kB view details)

Uploaded Source

Built Distribution

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

exceptbot-1.0.11-py3-none-any.whl (286.2 kB view details)

Uploaded Python 3

File details

Details for the file exceptbot-1.0.11.tar.gz.

File metadata

  • Download URL: exceptbot-1.0.11.tar.gz
  • Upload date:
  • Size: 283.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for exceptbot-1.0.11.tar.gz
Algorithm Hash digest
SHA256 173a98884a7f0387336a14b50e581acc4ecbc2d7269b3cfb7c810f8b90274512
MD5 9cd2c6434dc4ce7baaf2a9f4e14e24ae
BLAKE2b-256 c669e9714b67ee94a46fc44fca5791c488dfb964faee50f3349ce458a567d11a

See more details on using hashes here.

File details

Details for the file exceptbot-1.0.11-py3-none-any.whl.

File metadata

  • Download URL: exceptbot-1.0.11-py3-none-any.whl
  • Upload date:
  • Size: 286.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for exceptbot-1.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 bc703458d9dbb267e56441bff8162ad0c8d823644c910ca46f4a04a4b5fd0bf1
MD5 e473e190f7af209d2e31c27f7fd3bf7f
BLAKE2b-256 231bf93d3a0324afd857450e44e1f40564d1bf29a930837d11b5743345fa8b9f

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