Логгер Django для ClickHouse с интеграцией Celery.
Project description
clickhouse-django-logger
Описание
Этот проект предоставляет возможность логировать ошибки Django в базу данных Clickhouse. Логи записываются через отложенные задачи в celery, в отдельной очереди, чтобы не нагружать другие воркеры.
Установка
Установите через pip:
pip install clickhouse-django-logger # Установка стабильной версии
pip install -U git+https://github.com/single-service/clickhouse_django_logger.git@master # Установка версии разработки
Добавьте clickhouse_django_logger в INSTALLED_APPS:
INSTALLED_APPS = INSTALLED_APPS + ("clickhouse_django_logger",)
Установите переменные среды для Clickhouse logger в settings.py:
DJANGO_CLICKHOUSE_LOGGER_HOST = "clickhouse"
DJANGO_CLICKHOUSE_LOGGER_PORT = 8123
DJANGO_CLICKHOUSE_LOGGER_USER = "default"
DJANGO_CLICKHOUSE_LOGGER_PASSWORD = "default"
# Для создания отдельной очереди для celery:
CELERY_TASK_QUEUES = {
'logger': {
'exchange': 'logger',
'exchange_type': 'direct',
'binding_key': 'logger',
},
}
Добавьте Clickhouse logger в конфигурацию логгера в settings.py:
LOGGING = {
"version": 1,
"disable_existing_loggers": False,
"formatters": {
'verbose': {
'format': '%(levelname)s %(asctime)s %(module)s %(message)s'
},
'simple': {
'format': '%(levelname)s %(message)s'
},
},
"handlers": {
'console': {
'level': 'DEBUG',
'class': 'logging.StreamHandler',
'formatter': 'simple'
},
'error': {
'level': 'INFO',
'class': 'logging.handlers.WatchedFileHandler',
'filename': 'logs/error.log',
'formatter': 'verbose'
},
'mail_admins': {
'level': 'ERROR',
'class': 'django.utils.log.AdminEmailHandler',
},
'info': {
'level': 'INFO',
'class': 'logging.handlers.WatchedFileHandler',
'filename': 'logs/info.log',
'formatter': 'verbose'
},
"django_clickhouse_logger": {
"level": "INFO",
"class": "clickhouse_django_logger.handlers.LoggerHandler",
},
},
"loggers": {
'django.request': {
'handlers': ['mail_admins', 'django_clickhouse_logger', 'console'],
'level': 'ERROR',
'propagate': False,
},
'django.template': {
'handlers': ['django_clickhouse_logger', 'mail_admins'],
'level': 'ERROR',
'propagate': False,
},
'info': {
'handlers': ['django_clickhouse_logger'],
'level': 'INFO',
},
'celery': {
'handlers': ['console', 'django_clickhouse_logger'],
'level': 'ERROR',
'propagate': True
},
},
}
Контакты
Если у вас есть вопросы или предложения, не стесняйтесь связаться со мной по электронной почте: singleservice2022@gmail.com
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for clickhouse_django_logger-0.1.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | fa31d07508c14b7f79563f398a15275da98f5866ba708261482e822147f2eecf |
|
MD5 | 94411aea672d835087bc10121b4f43e4 |
|
BLAKE2b-256 | 71bdb72648389b23b07d4a8904579cc167b36800fd9a229090662b020d7cf53b |
Close
Hashes for clickhouse_django_logger-0.1.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7d58250e11dd7535f1b9cc3257f93e2eb08db59c32b391cc35a3726df1f1e9d0 |
|
MD5 | dda7cd074efd1c2195e7df88332e5a36 |
|
BLAKE2b-256 | 58a7064e1bbbb329d8989ec89e8dd875ced549e35ae0b8245519507301306f0f |