Блог "Дети ОИТа"
/поиск

Форматы сообщений и 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 с маскированием.
  • Договаривайтесь о словаре ключей между сервисами.