syslog — Протокол syslog для библиотек Unix
Этот модуль предоставляет интерфейс к библиотечным функциям Unix syslog. Для подробного описания объекта syslog см. страницы руководства Unix.
Этот модуль оборачивает системную семью syslog функций. Чистая библиотека Python, которая может взаимодействовать с сервером syslog, доступна в модуле logging.handlers как SysLogHandler.
Модуль определяет следующие функции:
-
syslog.syslog(message) -
syslog.syslog(priority, message) -
Отправляет строку message в системный логгер. Если необходимо, добавляется завершающий символ новой строки. Каждое сообщение помечено приоритетом, состоящим из facility и level. Необязательный аргумент priority, по умолчанию
LOG_INFO, определяет приоритет сообщения. Если facility не закодирован в priority с помощью побитового ИЛИ (LOG_INFO | LOG_USER), используется значение, заданное в вызовеopenlog().Если
openlog()не был вызван до вызоваsyslog(), будет вызваноopenlog()без аргументов.
-
syslog.openlog([ident[, logoption[, facility]]]) -
Параметры логгирования последующих вызовов
syslog()можно установить, вызвавopenlog().syslog()вызоветopenlog()без аргументов, если лог в данный момент не открыт.Необязательный аргумент ident — это строка, которая добавляется в префикс к каждому сообщению, по умолчанию
sys.argv[0]с удаленными начальными компонентами пути. Необязательный аргумент logoption (по умолчанию 0) — это битовая маска — см. ниже возможные значения для комбинаций. Необязательный аргумент facility (по умолчаниюLOG_USER) устанавливает значение по умолчанию для facility сообщений, которые не имеют явно закодированного facility.
-
syslog.closelog() -
Сбросить значения модуля syslog и вызвать системную библиотечную функцию
closelog().Это заставит модуль вести себя так же, как при первоначальном импорте. Например,
openlog()будет вызван при первом вызовеsyslog()(еслиopenlog()еще не был вызван), и параметры ident и другие параметрыopenlog()сбросятся до значений по умолчанию.
-
syslog.setlogmask(maskpri) -
Установить маску приоритета на maskpri и вернуть предыдущее значение маски. Вызовы
syslog()с уровнем приоритета, не установленным в maskpri, игнорируются. По умолчанию регистрируются все приоритеты. ФункцияLOG_MASK(pri)вычисляет маску для отдельного приоритета pri. ФункцияLOG_UPTO(pri)вычисляет маску для всех приоритетов до и включая pri.
Модуль определяет следующие константы:
- Уровни приоритетов (высокий к низкому):
-
LOG_EMERG,LOG_ALERT,LOG_CRIT,LOG_ERR,LOG_WARNING,LOG_NOTICE,LOG_INFO,LOG_DEBUG. - Facility:
-
LOG_KERN,LOG_USER,LOG_MAIL,LOG_DAEMON,LOG_AUTH,LOG_LPR,LOG_NEWS,LOG_UUCP,LOG_CRON,LOG_SYSLOGиLOG_LOCAL0доLOG_LOCAL7. - Опции логгирования:
-
LOG_PID,LOG_CONS,LOG_NDELAY,LOG_NOWAITиLOG_PERRORесли определены в<syslog.h>.
1. Примеры
1.1. Простой пример
Несколько простых примеров:
import syslog
syslog.syslog('Processing started')
if error:
syslog.syslog(syslog.LOG_ERR, 'Processing started')
Пример установки некоторых опций логгирования, включая идентификатор процесса в записанных сообщениях, и запись сообщений в объект facility, используемый для почтовых логов:
syslog.openlog(logoption=syslog.LOG_PID, facility=syslog.LOG_MAIL)
syslog.syslog('E-mail processing initiated...')
© 2001–2020 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/2.7/library/syslog.html