Логгер 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 (логи будут писаться только в очереди указанной тут)
# если переменная не указана, то будет использована стандартная очередь
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": "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.5.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 27516ab0066a5eafe8838e60557d0105f8ee1a10f2487c381576f0b4676f5b2c |
|
MD5 | 2a3aceed6a4b3611d158ace426b3d581 |
|
BLAKE2b-256 | d8a2f6b6b471c6bd2bc719fc7a1902bca3486b60e7aa5e9555e206f0dd3e63b9 |
Close
Hashes for clickhouse_django_logger-0.1.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d345f469b58aaaf323e15b205f06420e2dd866b7e893471fa3e6ee63a590eb3a |
|
MD5 | e048646f2d3eb5e1931b312a995649da |
|
BLAKE2b-256 | 19decc3a78ea67f130a8db9e20cdac9960e940d0e725f7900bf0ae8d32101d5a |