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 -
Уровни приоритетов (высокий к низкому).
-
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