Логгер Django для ClickHouse с интеграцией Celery.
Project description
django_logger_clickhouse
Описание
Этот проект предоставляет возможность логировать ошибки Django в базу данных Clickhouse. Логи записываются через отложенные задачи в celery, в отдельной очереди, чтобы не нагружать другие воркеры.
Установка
Установите через pip:
pip install django_logger_clickhouse # Установка стабильной версии
pip install -U git+https://github.com/single-service/clickhouse_django_logger.git@master # Установка версии разработки
Добавьте django_logger_clickhouse в INSTALLED_APPS:
INSTALLED_APPS = INSTALLED_APPS + ("django_logger_clickhouse",)
Установите переменные среды для 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 (логи будут писаться только в очереди указанной тут)
# если переменная не указана, то будет использована стандартная очередь
USE_LOGGER_QUEUE_NAME = "logger"
# Для сортировки логов например по контурам (local, development, release)
DJANGO_CLICKHOUSE_SERVER_NAME = "release" # по умолчанию development
Добавьте 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": "django_logger_clickhouse.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
},
},
}
Контакты
Если у вас есть вопросы или предложения, не стесняйтесь связаться со мной по электронной почте: vipzenit666@yandex.ru
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
File details
Details for the file django_logger_clickhouse-0.1.2.tar.gz
.
File metadata
- Download URL: django_logger_clickhouse-0.1.2.tar.gz
- Upload date:
- Size: 6.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4a687f1a038cb84307dbcebe67c5d08cc76c1d4a8cb6d05ba8a5c475a6113a3f |
|
MD5 | d761653437ad35e8fc73a7d86dbf0ffe |
|
BLAKE2b-256 | 8f45bfef3415c4d9070b63d8a7dcafb757cbfe17b6ec5a4db3af69f9f25bae00 |
File details
Details for the file django_logger_clickhouse-0.1.2-py3-none-any.whl
.
File metadata
- Download URL: django_logger_clickhouse-0.1.2-py3-none-any.whl
- Upload date:
- Size: 6.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dc87dd82789a9a5e640c32ddcb1099553669045f8cdcbc09dbd0cf61796e3d19 |
|
MD5 | 5e25c9796ef4b8b35930545907f88289 |
|
BLAKE2b-256 | 99e2bbf1bf519851aed60422fb1b4a32a389ea385a1155f4f6dde7a0ff49a34b |