Skip to main content

a simple logger that sends 500 exceptions to a Telegram bot of your choice.

Project description

This is a simple logger that sends 500 exceptions to a Telegram bot of your choice.

Quick start

Install django-log-to-telegram:

pip install -e django_log_to_telegram

1. register a bot on Telegram (with BotFather), start a chat with it and put the Api token in

LOG_TO_TELEGRAM_BOT_TOKEN = '12345678:replace-me-with-real-token'

Different errors will be fired if the BOT_TOKEN is not active or if there is no chat active with it.

  1. add the ‘django_log_to_telegram’ to your INSTALLED_APPS setting:
  1. add the django_log_to_telegram.log.AdminTelegramHandler to your app’s logging configuration, for example:
    'version': 1,
    'disable_existing_loggers': False,
    'filters': {
        'require_debug_false': {
            '()': 'django.utils.log.RequireDebugFalse'
    'handlers': {
        'telegram_log': {
            'level': 'ERROR',
            'filters': ['require_debug_false'],
            'class': 'django_log_to_telegram.log.AdminTelegramHandler',
            'bot_token': LOG_TO_TELEGRAM_BOT_TOKEN,
    'loggers': {
        'django.request': {
            'handlers': ['telegram_log'],
            'level': 'ERROR',
            'propagate': True,

if you want to test this logger in a debug environment, just remove the filters’: [‘require_debug_false’], line in the ‘handlers’ dictionary.

  1. Run python migrate to create the django_log_to_telegram models.

#TODO creare un primo modello

If everything went well, you bot will then begin sending messages on 500 exceptions.

There is a very basic test app provided in the folder test_app. It is configured to send errors to telegram even with DEBUG active, so that it can be useful with just a

./ runserver

It does not provide any database configuration, and most of Django basic settings are stripped out, so any use of it outside the very basic testing of the django_log_to_telegram mechanism is deprecated to say the least.

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-log-to-telegram-2020.1.23.tar.gz (18.3 kB view hashes)

Uploaded source

Built Distribution

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page