syslog — процедуры библиотеки syslog Unix
Этот модуль предоставляет интерфейс к процедурам библиотеки syslog Unix. Подробное описание средства syslog см. на страницах руководства Unix.
Доступность: Unix, не WASI, не iOS.
Этот модуль оборачивает семейство системных процедур syslog. Чистая библиотека Python для взаимодействия с сервером syslog доступна в модуле logging.handlers в виде SysLogHandler.
Модуль определяет следующие функции:
-
syslog.syslog(message) - syslog.syslog(priority, message)
-
Отправляет строку message системному журналу. При необходимости в конец добавляется символ новой строки. Каждому сообщению присваивается метка приоритета, состоящая из facility и level. Необязательный аргумент priority, значение по умолчанию которого —
LOG_INFO, определяет приоритет сообщения. Если средство не закодировано в priority с помощью логического ИЛИ (LOG_INFO | LOG_USER), используется значение, указанное при вызовеopenlog().Если перед вызовом
syslog()не вызывалась функцияopenlog(), функцияopenlog()будет вызвана без аргументов.Вызывает событие аудита
syslog.syslogс аргументамиpriority,message.Изменено в версии 3.2: В предыдущих версиях
openlog()не вызывалась автоматически, если её не вызывали до вызоваsyslog(); вместо этого вызовopenlog()откладывался до реализации syslog.Изменено в версии 3.12: Использование этой функции в субинтерпретаторах ограничено. (Это касается только кода, работающего в нескольких интерпретаторах, и для большинства пользователей ограничение несущественно.) Перед использованием
syslog()в субинтерпретаторе необходимо вызватьopenlog()в главном интерпретаторе. В противном случае будет вызвано исключение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().В результате модуль возвращается к поведению, которое наблюдается сразу после его импорта. Например, при первом вызове
syslog()будет вызвана функцияopenlog()(если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 -
Средства; доступность
LOG_AUTHPRIV,LOG_FTP,LOG_NETINFO,LOG_REMOTEAUTH,LOG_INSTALLиLOG_RASзависит от наличия в<syslog.h>.Изменено в версии 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 -
Параметры ведения журнала; доступность
LOG_ODELAY,LOG_NOWAITиLOG_PERRORзависит от наличия в<syslog.h>.
Примеры
Простой пример
Несколько простых примеров:
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...')
© 2001–2025 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.13/library/syslog.html