syslog — Unix syslog library routines


Цей модуль забезпечує інтерфейс для процедур бібліотеки syslog Unix. Зверніться до довідкових сторінок Unix для детального опису засобу syslog.

Availability: Unix, not Emscripten, not WASI.

This module wraps the system syslog family of routines. A pure Python library that can speak to a syslog server is available in the logging.handlers module as SysLogHandler.

Модуль визначає такі функції:

syslog.syslog(message)
syslog.syslog(priority, message)

Надішліть рядок повідомлення системному реєстратору. За необхідності додається символ нового рядка. Кожне повідомлення позначено тегом пріоритету, що складається з засобу та рівня. Додатковий аргумент priority, який за замовчуванням має значення LOG_INFO, визначає пріоритет повідомлення. Якщо засіб не закодовано в пріоритеті за допомогою логічного або (LOG_INFO | LOG_USER), використовується значення, указане у виклику openlog().

If openlog() has not been called prior to the call to syslog(), openlog() will be called with no arguments.

Викликає подію аудиту syslog.syslog з аргументами priority, message.

Змінено в версії 3.2: In previous versions, openlog() would not be called automatically if it wasn’t called prior to the call to syslog(), deferring to the syslog implementation to call openlog().

syslog.openlog([ident[, logoption[, facility]]])

Параметри журналювання наступних викликів syslog() можна встановити за допомогою виклику openlog(). syslog() викличе openlog() без аргументів, якщо журнал наразі не відкритий.

Необов’язковий аргумент ключового слова ident — це рядок, який додається до кожного повідомлення та за замовчуванням має значення sys.argv[0] з видаленими компонентами початкового шляху. Додатковий аргумент ключового слова logoption (за замовчуванням 0) є бітовим полем. Нижче наведено можливі значення для об’єднання. Необов’язковий аргумент ключового слова facility (за замовчуванням: LOG_USER) встановлює функцію за замовчуванням для повідомлень, які не мають явно закодованої можливості.

Викликає подію аудиту syslog.openlog з аргументами ident, logoption, facility.

Змінено в версії 3.2: In previous versions, keyword arguments were not allowed, and ident was required.

syslog.closelog()

Скиньте значення модуля syslog і викличте системну бібліотеку closelog().

Це змушує модуль поводитись так само, як і під час початкового імпорту. Наприклад, openlog() буде викликано під час першого виклику syslog() (якщо openlog() ще не було викликано), а ident та інші openlog() параметри скидаються до значень за замовчуванням.

Викликає подію аудиту syslog.closelog без аргументів.

syslog.setlogmask(maskpri)

Встановіть маску пріоритету на maskpri та поверніть попереднє значення маски. Виклики до syslog() з рівнем пріоритету, не встановленим у maskpri, ігноруються. За умовчанням реєструються всі пріоритети. Функція LOG_MASK(pri) обчислює маску для індивідуального пріоритету pri. Функція LOG_UPTO(pri) обчислює маску для всіх пріоритетів до pri включно.

Викликає подію аудиту syslog.setlogmask з аргументом maskpri.

Модуль визначає такі константи:

Priority levels (high to low):

LOG_EMERG, LOG_ALERT, LOG_CRIT, LOG_ERR, LOG_WARNING, LOG_NOTICE, LOG_INFO, LOG_DEBUG.

Facilities:

LOG_KERN, LOG_USER, LOG_MAIL, LOG_DAEMON, LOG_AUTH, LOG_LPR, LOG_NEWS, LOG_UUCP, LOG_CRON, LOG_SYSLOG, LOG_LOCAL0 to LOG_LOCAL7, and, if defined in <syslog.h>, LOG_AUTHPRIV.

Log options:

LOG_PID, LOG_CONS, LOG_NDELAY, and, if defined in <syslog.h>, LOG_ODELAY, LOG_NOWAIT, and LOG_PERROR.

Приклади

Простий приклад

Простий набір прикладів:

import syslog

syslog.syslog('Processing started')
if error:
    syslog.syslog(syslog.LOG_ERR, 'Processing started')

Приклад налаштування деяких параметрів журналу, які включатимуть ідентифікатор процесу в зареєстрованих повідомленнях і запис повідомлень до засобу призначення, який використовується для журналювання пошти:

syslog.openlog(logoption=syslog.LOG_PID, facility=syslog.LOG_MAIL)
syslog.syslog('E-mail processing initiated...')