Перейти к содержанию

Логирование

Библиотека nalogovich поддерживает опциональное логирование всех операций с использованием loguru.

По умолчанию логирование выключено, но вы можете активировать его при создании клиента.


Включение логирования

Чтобы включить логирование, передайте параметр enable_logging=True при создании NpdClient:

from nalogovich import NpdClient

async with NpdClient(
    inn="ваш_инн",
    password="ваш_пароль",
    enable_logging=True  # Включаем логирование
) as client:
    await client.auth()
    # Все операции будут логироваться

Что логируется

Библиотека логирует следующие операции:

Авторизация

  • Успешная авторизация
  • Попытка обновления токена
  • Успешное обновление токена
  • Ошибки авторизации (неверные учетные данные, доступ запрещен, сетевые ошибки)

Работа с чеками

  • Получение списка чеков (с указанием периода, offset, limit и количества полученных записей)
  • Создание чека (с ID созданного чека)
  • Аннулирование чека (с UUID чека)

Работа со счетами

  • Создание счёта (с ID созданного счёта)
  • Получение списка счетов (с количеством полученных записей)
  • Аннулирование счёта (с ID счёта)
  • Подтверждение оплаты счёта (с ID счёта)
  • Обновление платёжной информации счёта (с ID счёта)
  • Создание чека на основе счёта (с ID счёта)

Дополнительные операции

  • Получение реквизитов для оплаты (с количеством полученных записей)

Настройка loguru

Поскольку библиотека использует loguru, вы можете настроить форматирование и вывод логов в вашем приложении:

from loguru import logger

# Пример настройки формата логов
logger.add(
    "nalogovich.log",
    format="{time:YYYY-MM-DD HH:mm:ss} | {level} | {message}",
    level="INFO",
    rotation="10 MB"
)

# Использование с включенным логированием
async with NpdClient(
    inn="ваш_инн",
    password="ваш_пароль",
    enable_logging=True
) as client:
    await client.auth()