{"id":20228537,"url":"https://github.com/andrewpetrochenkov/django-exception.py","last_synced_at":"2026-05-17T04:35:24.626Z","repository":{"id":243723714,"uuid":"703223237","full_name":"andrewpetrochenkov/django-exception.py","owner":"andrewpetrochenkov","description":"Django python exception model, admin, logging handler, middleware and excepthook","archived":false,"fork":false,"pushed_at":"2023-10-10T20:40:20.000Z","size":5,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-26T09:41:57.363Z","etag":null,"topics":["django","error-handling","exceptions","logging"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/andrewpetrochenkov.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-10-10T20:40:17.000Z","updated_at":"2023-10-10T20:40:24.000Z","dependencies_parsed_at":"2024-06-10T22:08:59.808Z","dependency_job_id":"5a1f517c-1e14-4f3c-9d89-d2870c56baa2","html_url":"https://github.com/andrewpetrochenkov/django-exception.py","commit_stats":null,"previous_names":["andrewpetrochenkov/django-exception.py"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrewpetrochenkov%2Fdjango-exception.py","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrewpetrochenkov%2Fdjango-exception.py/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrewpetrochenkov%2Fdjango-exception.py/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andrewpetrochenkov%2Fdjango-exception.py/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andrewpetrochenkov","download_url":"https://codeload.github.com/andrewpetrochenkov/django-exception.py/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241670158,"owners_count":20000327,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["django","error-handling","exceptions","logging"],"created_at":"2024-11-14T07:31:13.699Z","updated_at":"2025-11-05T09:01:59.594Z","avatar_url":"https://github.com/andrewpetrochenkov.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"### Installation\n```bash\n$ pip install django-exception\n```\n\n#### `settings.py`\n```python\nINSTALLED_APPS+=['django_exception']\n```\n\n#### `migrate`\n```bash\n$ python manage.py migrate\n```\n\n#### Models/tables\nmodel|table|columns/fields\n-|-|-\n`ExceptionModel`|`django_exception`|id,module,filename,lineno,exc_type,exc_message,exc_traceback,timestamp\n### Examples\n`settings.py`\n```python\nLOGGING = {\n    \"version\": 1,\n    \"handlers\": {\n        \"console\": {\n            \"level\": \"DEBUG\",\n            \"class\": \"logging.StreamHandler\",\n        },\n        \"django_exception\": {\n            \"level\": \"ERROR\",\n            \"class\": \"django_exception.ExceptionLogHandler\",\n        }\n    },\n    \"root\": {\n        \"handlers\": [\"console\", \"django_exception\"],\n        \"level\": \"DEBUG\",\n    },\n    \"loggers\": {\n        \"django_exception\": {\n            \"level\": \"ERROR\",\n            \"handlers\": [\"django_exception\"],\n            \"propagate\": True,\n        },\n    },\n}\n\nMIDDLEWARE = [\n    \"django_exception.middleware.ExceptionMiddleware\",\n]\n```\n\n`sys.excepthook` - log all exceptions\n```python\nimport sys\nimport django_exception\n\ndef excepthook(exc_type, exc_message, tb):\n\tdjango_exception.excepthook(exc_type, exc_message, tb)\n\traise exc_type(exc_message)\n\nsys.excepthook = excepthook\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandrewpetrochenkov%2Fdjango-exception.py","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandrewpetrochenkov%2Fdjango-exception.py","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandrewpetrochenkov%2Fdjango-exception.py/lists"}