Handler для библиотек logging и loguru для отправки логов в Loki, поддерживает ассинхронную отправку батчами в отличии от конкрутенов
Project description
Импорт
from async_loki_handler import LokiHandler
- _Пример использования c logging:
import logging
from src.async_loki_handler import LokiHandler
if __name__ == "__main__":
loki_handler = LokiHandler(
url="http://127.0.0.1:3100/loki/api/v1/push",
labels={"app": "loguru"},
batch_size=1000,
proxy="http://127.0.0.1:8080", # или None
verify_ssl=True,
)
# Настройка логирования
logging.basicConfig(
level=logging.INFO,
format='%(asctime)s - %(levelname)s - %(message)s',
handlers=[
logging.StreamHandler(), # <- Добавили вывод в консоль
logging.FileHandler('../content_generator.log', encoding='utf-8'), # <- Добавили запись в файл
loki_handler, # <- Добавили отправку на сервер с Loki
]
)
logger = logging.getLogger(__name__)
# Настройка для async_loki_handler
logger.setLevel(logging.DEBUG)
logger.debug("LokiHandler - logging")
logger.info("Тестируем logging с библиотекой LokiHandler")
logger.warning("Тестируем logging с библиотекой LokiHandler")
logger.error("Тестируем logging с библиотекой LokiHandler")
logger.critical("Тестируем logging с библиотекой LokiHandler")
for i in range(1000):
logger.info(f"Тестируем батчи logging с библиотекой LokiHandler #{i + 1}")
- _Пример использования c loguru:
from loguru import logger
from src.async_loki_handler import LokiHandler
# Пример использования с loguru и async_loki_handler
if __name__ == "__main__":
loki_handler = LokiHandler(
url="http://127.0.0.1:3100/loki/api/v1/push",
labels={"app": "logging"},
batch_size=100,
proxy="http://127.0.0.1:8080", # или None
verify_ssl=True,
)
logger.add(loki_handler, level="DEBUG")
logger.info("hi")
logger.debug("LokiHandler - loguru")
logger.info("Тестируем loguru с библиотекой LokiHandler")
logger.warning("Тестируем loguru с библиотекой LokiHandler")
logger.error("Тестируем loguru с библиотекой LokiHandler")
logger.critical("Тестируем loguru с библиотекой LokiHandler")
for i in range(1000):
logger.info(f"Тестируем батчи loguru с библиотекой LokiHandler #{i + 1}")
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
async_loki_handler-0.0.7.tar.gz
(10.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file async_loki_handler-0.0.7.tar.gz.
File metadata
- Download URL: async_loki_handler-0.0.7.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
491c6894f0df2d714e4b874b8982e9a0c92cb9488dfcd469e6f00744d25e4033
|
|
| MD5 |
1c1ab063b77cf2b562c929e84625c4c7
|
|
| BLAKE2b-256 |
025ada533722ff6b8b7a99d0ace9c8130ee360b48c5e0906869fe6793f00c147
|
File details
Details for the file async_loki_handler-0.0.7-py3-none-any.whl.
File metadata
- Download URL: async_loki_handler-0.0.7-py3-none-any.whl
- Upload date:
- Size: 10.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ba64d5f9b0548291bffa840d9826e47762ebaab212aeb494e5a8be2a4b7f09a4
|
|
| MD5 |
42c0ee63ea751b1e7ade422454ffd516
|
|
| BLAKE2b-256 |
dddfc77e54c331fe0971058f5047349e27edd8d0febbbdde87a587deaf3c229c
|