syslog — Обычные библиотечные процедуры Unix syslog
Этот модуль предоставляет интерфейс к обычным библиотечным процедурам Unix syslog. Обратитесь к страницам руководства Unix для получения подробного описания syslog объекта.
Этот модуль оборачивает семейство системных 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.Изменено в версии 3.2: В предыдущих версиях именованные аргументы не допускались, и ident был обязателен. Значение по умолчанию для ident зависело от системных библиотек и часто было
pythonвместо имени файла программы python.
-
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. - Области:
-
LOG_KERN,LOG_USER,LOG_MAIL,LOG_DAEMON,LOG_AUTH,LOG_LPR,LOG_NEWS,LOG_UUCP,LOG_CRON,LOG_SYSLOG,LOG_LOCAL0поLOG_LOCAL7, и, если определено в<syslog.h>,LOG_AUTHPRIV. - Параметры журнала:
-
LOG_PID,LOG_CONS,LOG_NDELAY, и, если определено в<syslog.h>,LOG_ODELAY,LOG_NOWAIT, иLOG_PERROR.
1. Примеры
1.1. Простой пример
Простая последовательность примеров:
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–2020 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.5/library/syslog.html