syslog — Подпрограммы библиотеки системного журнала Unix


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

Dostępność: Unix, not WASI, not iOS.

Этот модуль включает в себя семейство системных процедур системного журнала. Библиотека чистого Python, которая может взаимодействовать с сервером системного журнала, доступна в модуле logging.handlers как SysLogHandler.

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

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

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

Если openlog() не была вызвана до вызова syslog(), openlog() будет вызвана без аргументов.

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

Zmienione w wersji 3.2: В предыдущих версиях openlog() не вызывалась автоматически, если она не вызывалась до вызова syslog(), откладывая вызов openlog() на реализацию системного журнала.

Zmienione w wersji 3.12: Эта функция ограничена в субинтерпретаторах. (Затрагивается только код, который работает в нескольких интерпретаторах, и ограничение не актуально для большинства пользователей.) openlog() необходимо вызвать в основном интерпретаторе, прежде чем syslog() можно будет использовать в подинтерпретаторе. В противном случае будет выдано RuntimeError.

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

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

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

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

Zmienione w wersji 3.2: В предыдущих версиях аргументы с ключевыми словами не допускались и требовалось ident.

Zmienione w wersji 3.12: Эта функция ограничена в субинтерпретаторах. (Затрагивается только код, который работает в нескольких интерпретаторах, и ограничение не актуально для большинства пользователей.) Это можно вызвать только в основном интерпретаторе. Он вызовет RuntimeError, если его вызвать в подинтерпретаторе.

syslog.closelog()

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

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

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

Zmienione w wersji 3.12: Эта функция ограничена в субинтерпретаторах. (Затрагивается только код, который работает в нескольких интерпретаторах, и ограничение не актуально для большинства пользователей.) Это можно вызвать только в основном интерпретаторе. Он вызовет RuntimeError, если его вызвать в подинтерпретаторе.

syslog.setlogmask(maskpri)

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

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

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

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

Уровни приоритета (от высокого до низкого).

syslog.LOG_AUTH
syslog.LOG_AUTHPRIV
syslog.LOG_CRON
syslog.LOG_DAEMON
syslog.LOG_FTP
syslog.LOG_INSTALL
syslog.LOG_KERN
syslog.LOG_LAUNCHD
syslog.LOG_LPR
syslog.LOG_MAIL
syslog.LOG_NETINFO
syslog.LOG_NEWS
syslog.LOG_RAS
syslog.LOG_REMOTEAUTH
syslog.LOG_SYSLOG
syslog.LOG_USER
syslog.LOG_UUCP
syslog.LOG_LOCAL0
syslog.LOG_LOCAL1
syslog.LOG_LOCAL2
syslog.LOG_LOCAL3
syslog.LOG_LOCAL4
syslog.LOG_LOCAL5
syslog.LOG_LOCAL6
syslog.LOG_LOCAL7

Возможности, в зависимости от доступности в <syslog.h> для LOG_AUTHPRIV, LOG_FTP, LOG_NETINFO, LOG_REMOTEAUTH, LOG_INSTALL и LOG_RAS.

Zmienione w wersji 3.13: Добавлены LOG_FTP, LOG_NETINFO, LOG_REMOTEAUTH, LOG_INSTALL, LOG_RAS и LOG_LAUNCHD.

syslog.LOG_PID
syslog.LOG_CONS
syslog.LOG_NDELAY
syslog.LOG_ODELAY
syslog.LOG_NOWAIT
syslog.LOG_PERROR

Параметры журнала, в зависимости от наличия в <syslog.h> для LOG_ODELAY, LOG_NOWAIT и LOG_PERROR.

Przykłady

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

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

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...')