Spec-Zone.ru › Python 3.13

syslog — Программные интерфейсы библиотеки Unix syslog

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

Доступность: Unix, не WASI, не iOS.

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

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

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

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

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

Вызывает событие аудита syslog.syslog с аргументами priority, message.

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

Изменено в версии 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.

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

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

syslog.closelog()

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

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

Вызывает событие аудита syslog.closelog без аргументов.

Изменено в версии 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

Уровни приоритетов (высокий к низкому).

END_OF_DOCUMENT_MARKER
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.

Изменено в версии 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.

Примеры

Простой пример

Несколько простых примеров:

import syslog

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

Пример установки параметров логов, включающий ID процесса в сообщениях логов и запись сообщений в установленное средство логгирования почты:

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

© 2001–2024 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.13/library/syslog.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API