syslog — Процедуры библиотеки Unix syslog


Этот модуль предоставляет интерфейс к библиотечным процедурам Unix syslog. Обратитесь к страницам руководства Unix для подробного описания средства syslog.

В этот модуль обернуто семейство системных процедур syslog. Чистая библиотека Python, которая может общаться с сервером syslog, доступна в модуле logging.handlers как SysLogHandler.

Модуль определяет следующие функции:

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

Отправьте строку message в системный регистратор. При необходимости добавляется новая строка. Каждое сообщение помечается приоритетом, состоящим из facility и level. Необязательный аргумент приоритет, который по умолчанию равен LOG_INFO, определяет приоритет сообщения. Если объект не закодирован в priority с помощью логического-или (LOG_INFO | LOG_USER), используется значение, заданное в вызове openlog().

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

Вызывает auditing event syslog.syslog с аргументами priority, message.

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

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

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

Необязательный аргумент ident - это строка, которая добавляется к каждому сообщению и по умолчанию имеет значение sys.argv[0] с вычеркнутыми ведущими компонентами пути. Необязательный аргумент logoption (по умолчанию 0) представляет собой битовое поле - см. ниже возможные значения для комбинирования. Необязательный аргумент facility (по умолчанию LOG_USER) устанавливает объект по умолчанию для сообщений, которые не имеют явно закодированного объекта.

Вызывает auditing event syslog.openlog с аргументами ident, logoption, facility.

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

syslog.closelog()

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

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

Вызывает auditing event syslog.closelog без аргументов.

syslog.setlogmask(maskpri)

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

Вызывает auditing event syslog.setlogmask с аргументом maskpri.

Модуль определяет следующие константы:

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

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

Удобства:

LOG_KERN, LOG_USER, LOG_MAIL, LOG_DAEMON, LOG_AUTH, LOG_LPR, LOG_NEWS, LOG_UUCP, LOG_CRON, LOG_SYSLOG, LOG_LOCAL0 к LOG_LOCAL7, и, если определено в <syslog.h>, LOG_AUTHPRIV.

Параметры журнала:

LOG_PID, LOG_CONS, LOG_NDELAY, и, если определено в <syslog.h>, LOG_ODELAY, LOG_NOWAIT и 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...')
Вернуться на верх