Содержание страницы
syslog – библиотечные функции syslog Unix¶syslog – Unix syslog library routines
Этот модуль предоставляет интерфейс к библиотечным функциям Unix syslog.
Подробное описание средства syslog приведено на страницах руководства Unix.
Доступность: 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(), и вызовopenlog()перекладывался на реализацию syslog.Изменено в версии 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.
Примеры¶Examples
Простой пример¶Simple example
Простой набор примеров:
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...')