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
File details
Details for the file dsutp_custom_logger-1.0.1.tar.gz.
File metadata
- Download URL: dsutp_custom_logger-1.0.1.tar.gz
- Upload date:
- Size: 4.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
370f41aff571cb248db98f8fd27068853fdfcaa6234a6ed85624578a0308754d
|
|
| MD5 |
f34930b25f735653d695263d5a3e76ca
|
|
| BLAKE2b-256 |
96f6c219d811c1fc060d09eb84bfdcc9bc463534dacf166e24b113b15374b137
|