Форматы сообщений и RFC 5424
Введение
RFC 5424 определяет структурированный формат syslog-сообщения с явными полями и поддержкой структурированных данных. Это упрощает парсинг, фильтрацию и маршрутизацию.
Структура сообщения
<PRI>VERSION TIMESTAMP HOSTNAME APP-NAME PROCID MSGID [STRUCTURED-DATA] MSG
- PRI:
<facility*8+severity> - VERSION: обычно 1
- TIMESTAMP: ISO 8601 с таймзоной
- HOSTNAME: имя узла
- APP-NAME: имя приложения
- PROCID: идентификатор процесса
- MSGID: тип сообщения
- STRUCTURED-DATA: пары ключ-значение
- MSG: свободный текст
Примеры STRUCTURED-DATA
[exampleSDID@32473 iut="3" eventSource="Application" eventID="1011"]- Ключам давайте стабильные имена:
user,session,status_code,duration_ms.
Совместимость
- Legacy BSD-синтаксис без STRUCTURED-DATA по-прежнему встречается.
- Приёмник должен корректно обрабатывать оба формата; для новых интеграций — RFC 5424.
Рекомендации
- Включайте MSGID для типовых событий.
- Используйте ISO 8601 таймстемпы с часовым поясом.
- Не кладите чувствительные данные в MSG; используйте STRUCTURED-DATA с маскированием.
- Договаривайтесь о словаре ключей между сервисами.