Syslog

syslog (англ. system log — системный журнал) — стандарт отправки и регистрации сообщений о происходящих в системе событиях (то есть создания событийных журналов), использующийся в компьютерных сетях, работающих по протоколу TCP/IP. Термином «syslog» называют как ныне стандартизированный сетевой протокол syslog, так и программное обеспечение (приложение, библиотеку), которое занимается отправкой и получением системных сообщений.

Стандартом предусматривается, что источники формируют простые текстовые сообщения о происходящих в них событиях и передают их на обработку серверу Syslog (называемому «syslogd», «syslog daemon», либо же, «syslog server»), используя один из сетевых протоколов семейства IP (UDP или TCP). Формирование сообщений о событиях и их передача происходит по определённым правилам, называемым протоколом Syslog. Как правило сообщение имеет небольшой размер (до 1024 байт) и отсылается в открытом виде. Тем не менее, при использовании специальных средств (таких, как Stunnel, sslio или sslwrap), возможно шифрование сообщений и отправка их по SSL/TLS.

Поскольку источники сообщений и сервер Syslog могут располагаться на разных машинах, это позволяет организовать сбор и хранение сообщений от множества географически разнесённых разнородных источников в едином хранилище (репозитории), что чрезвычайно важно для администраторов сетей, которые могут и не иметь физического доступа одновременно ко всем устройствам, серверам и компьютерам в сети.

Также серверы Syslog, как правило, могут не только регистрировать сообщения, но и пересылать их другим серверам Syslog, основываясь на уровне важности сообщения (Severity) и категории сформировавшего сообщение субъекта (Facility), что позволяет организовать, например, иерархическую систему хранилищ. А это может помочь, например, снизить время реакции персонала на критические события. Допустим, что существует некая крупная сеть, состоящая из нескольких сегментов. В каждом сегменте есть свой сервер Syslog, получающий сообщения только от источников внутри своего сегмента. Если эти низовые серверы настроить так, чтобы они пересылали сообщения критического уровня важности и выше на один общий головной сервер, то администратору сети, контролирующему через него всю сеть, будет легче отследить возникновение критической ситуации, поскольку таких сообщений немного и они не утонут в потоке нужных, но менее важных сообщений.

Текущая версия протокола Syslog предлагает усовершенствованный формат сообщений, позволяющий использовать точную отметку времени создания сообщения и осуществлять надежную идентификацию источника сообщения, а также применять кодировку UTF-8 для текста сообщения, что позволяет решить проблему интернационализации. Необязательные дополнительные поля (структурированные данные) могут использоваться для передачи различной информации, например, о погрешности локальных часов источника сообщения и точности их синхронизации с внешними часами точного времени, о языке, на котором написано сообщение, и т. д. Ввиду отмены привязки к конкретному транспорту, протокол Syslog может использовать любой из описанных в отдельных RFC механизмов доставки сообщений, но предпочтение отдается транспортам TLS.

Коды уровней важности сообщений
0 (Emergency) система не работоспособна
1 (Alert) система требует немедленного вмешательства
2 (Critical) состояние системы критическое
3 (Error) сообщения об ошибках
4 (Warning) предупреждения о возможных проблемах
5 (Notice) сообщения о нормальных, но важных событиях
6 (Informational) информационные сообщения
7 (Debug) отладочные сообщения
Коды категорий субъектов, формирующих сообщения
0 ядро операционной системы
1 программное обеспечение пользователя
2 почтовая система
3 системные службы (daemons)
4 сообщения безопасности (авторизации)
5 собственные сообщения syslogd
6 подсистема печати
7 подсистема новостных групп (телеконференций, NNTP)
8 подсистема UUCP
9 службы времени
10 сообщения безопасности (авторизации)
11 служба FTP
12 подсистема NTP
13 журнал аудита
14 аварийный журнал
15 службы времени
16 локальный 0
17 локальный 1
18 локальный 2
19 локальный 3
20 локальный 4
21 локальный 5
22 локальный 6
23 локальный 7

Обсуждение закрыто.