syslog — Библиотечные процедуры системного журнала Unix¶
Этот модуль предоставляет интерфейс для библиотечных процедур Unix syslog. Подробное описание возможностей syslog приведено на страницах руководства по Unix.
Availability: Unix, не Emscripten, не БЫЛ I.
Этот модуль содержит семейство подпрограмм system syslog. Библиотека Python, которая может взаимодействовать с сервером системного журнала, доступна в модуле logging.handlers как SysLogHandler.
Модуль определяет следующие функции:
- syslog.syslog(message)¶
- syslog.syslog(priority, message)
Отправьте строку message в системный регистратор. При необходимости добавляется новая строка в конце. Каждому сообщению присваивается приоритет, состоящий из объекта и уровня. Необязательный аргумент priority, значение которого по умолчанию равно
LOG_INFO, определяет приоритет сообщения. Если объект не закодирован в приоритете с помощью логического-или (LOG_INFO | LOG_USER), используется значение, указанное в вызовеopenlog().Если
openlog()не был вызван до вызова функцииsyslog(),openlog(), то будет вызван без аргументов.Создает auditing event
syslog.syslogс аргументамиpriority,message.
- syslog.openlog([ident[, logoption[, facility]]])¶
Параметры ведения журнала последующих вызовов
syslog()можно задать с помощью вызоваopenlog().syslog()будет вызыватьopenlog()без аргументов, если журнал в данный момент не открыт.Необязательный аргумент ключевого слова ident - это строка, которая добавляется перед каждым сообщением и по умолчанию имеет значение
sys.argv[0]без начальных компонентов пути. Необязательный аргумент ключевого слова logoption (по умолчанию 0) представляет собой битовое поле - возможные значения для объединения приведены ниже. Необязательный аргумент ключевого слова facility (по умолчаниюLOG_USER) устанавливает значение по умолчанию для сообщений, в которых не закодировано значение в явном виде.Создает auditing event
syslog.openlogс аргументамиident,logoption,facility.Изменено в версии 3.2: В предыдущих версиях аргументы ключевого слова были недопустимы, и требовался ident.
- syslog.closelog()¶
Сбросьте значения модуля системного журнала и вызовите системную библиотеку
closelog().Это приводит к тому, что модуль ведет себя так же, как и при первоначальном импорте. Например,
openlog()будет вызван при первом вызовеsyslog()(еслиopenlog()еще не был вызван), а ident и другие параметрыopenlog()будут сброшены на значения по умолчанию.Выдает auditing event
syslog.closelogбез каких-либо аргументов.
- syslog.setlogmask(maskpri)¶
Установите для маски приоритета значение maskpri и верните предыдущее значение маски. Вызовы
syslog()с уровнем приоритета, не заданным в maskpri, игнорируются. По умолчанию все приоритеты регистрируются. ФункцияLOG_MASK(pri)вычисляет маску для отдельного приоритета pri. ФункцияLOG_UPTO(pri)вычисляет маску для всех приоритетов вплоть до pri включительно.Создает auditing event
syslog.setlogmaskс аргументомmaskpri.
Модуль определяет следующие константы:
- Уровни приоритета (от высокого до низкого):
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.
Примеры¶
Простой пример¶
Простой набор примеров:
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...')