Простая запись в журнал systemd из Python.
Особенности:

  • Не требует компиляции (чистый Python), использует libsystemd.so;
  • Простота подключения и конфигурирования;
  • Только запись в журнал, ничего лишнего.

Пример использования:

    import logging

from systemdlogging.toolbox import init_systemd_logging

# В большинстве случаев одной строчки должно быть
# достаточно для конфигурирования.
# По умолчанию запись в журнал подключится root-логгеру Python.
init_systemd_logging() # Вернёт True, если инициализация прошла успешно.

# А далее используем logging как обычно.
logger = logging.getLogger(__name__)
logger.setLevel(logging.DEBUG)

logger.debug('My debug message')

try:
raise ValueError('Log me please')

except ValueError:
# Дополнить контекст записи можно при помощи extra.context.
logger.exception('Something terrible just happened', extra={
'message_id': True, # Генерируем ID сообщения автоматически.
'context': {
'FIELD1': 'one',
'FIELD2': 'two',
}
}, stack_info=True)

За более подробным описанием и примерами обратитесь к документации (англ.).

Смотрите также:
* Анонс systemd-logging 0.1.0 — пишем в журнал systemd из Python

Категории


На заметку
Зарегистрированные пользователи могут публиковать свои Статьи.