Python module custom logging
Project description
Назначение
Это обычный logging, но с более широкими настройками
Применение
from dsutp_custom_logger import Logging
log = Logging().get_logger()
log.info('Test my logs')
Описание параметров класса Logging
- log_file_enabled - запись логов в файл. Принимает булево значение True/False. Default = True
- log_console_enabled - запись логов в консоль. Принимает булево значение True/False. Default = True
- log_httpsink_enabled - отправка логов в удаленный http. Принимает булево значение True/False. Default = False
- log_httpsink_url - http ссылка до удаленого лог приемника. Принимает строковое значение ссылки. Default = None
- log_level - уровень логгирования. Принимает строковое значение DEBUG/INFO/WARNINGS ... .Default = INFO
- log_buffer_size_file - размер файла в байтах. Принимает целочисленное значение. Default = 5 * 10**7 (50 Мб)
- backupCount - число файлов с историей. Принимает целочисленное значение. Default = 1
- stream - потоки. Принимает список кастомных потоков. Default = []
- log_location - место файлов для логов. Принимает строкове значение. Default = log.log
- base_json_fields - "системные" поля для логов. Принимает словарь. Default = None
- custon_json_fields - кастомные поля для логов. Принимает словарь. Default = None
- log_structured_datetimeformat - формат даты. Принимает строковое значение. Default = '%Y-%m-%d %H:%M:%S'
Подбробное описание
log_httpsink_enabled и log_httpsink_url
Если log_httpsink_enabled = True и указана log_httpsink_url ссылка, то в зависимости от выставленного порога log_level будет отправлять тело запроса с полями {'level': '', 'message': ''}.
stream
Вы можете определить свой stream. Для этого нужно:
from dsutp_custom_logger import Stream, Logging
class YourCustomStream(Stream):
def write(self, msg: str) -> None:
do_something
log = Logging(stream = [YourCustomStream()]).get_logger()
base_json_fields
Словарь с базовыми полям, ключи можно изменять, а ключи статичный. Данные поля заполняются системными данными.
{"level": "levelname",
"message": "message",
"loggerName": "name",
"processName": "processName",
"processID": "process",
"threadName": "threadName",
"threadID": "thread",
"timestamp": "asctime",
"filename":"filename",
"module":"module",
"pathname":"pathname"}
custon_json_fields
Можно задать свои кастомные поля с уже заполнеными данными
{""RequestID":"123",
"Span":"344",
...}
Тесты
В папке tests находятся тесты с результатми
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
Close
Hashes for dsutp_custom_logger-1.0.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 370f41aff571cb248db98f8fd27068853fdfcaa6234a6ed85624578a0308754d |
|
MD5 | f34930b25f735653d695263d5a3e76ca |
|
BLAKE2b-256 | 96f6c219d811c1fc060d09eb84bfdcc9bc463534dacf166e24b113b15374b137 |