Visual RFC.
ALL RFCs / RFC 5424
Read the RFC ↗
RFC 5424 / SYSLOG MESSAGE FORMAT

Read the priority and header fields

02

The header identifies the event source, application and type. Priority combines a facility category with a severity number. The version tells the reader which header format is in use.

RFC 5424 · § 6.2EXAMPLE
4 / 4
Read the priority and header fieldsFour worked header states: facility20 and severity5 combine as20times8plus5=165; serialize exact PRI<165>; then schematic VERSION1 and the five following header fields, with NILVALUE hyphens and fictional hostname; separate invalid leap-second timestamp23:59:60Z is stopped beside a valid003fraction timestamp. Header widths not packet proportions, priority not trust or urgency ranking.Read the header · schematic fields23:59:60ZSTOP: leap seconds forbiddenValid: 2003-10-11T22:14:15.003ZUppercase T/Z · up to 6 fraction digits
04
Reject an invalid timestamp interpretation.

A separate timestamp ending 23:59:60Z is outside this RFC’s grammar because leap seconds are disallowed. A valid alternative is 2003-10-11T22:14:15.003Z. The picture stops the invalid form rather than silently repairing it.

Source for this drawing: RFC 5424 · Read RFC section 6.2 ↗

Protocol participantThreat or exceptionProtocol controlSimplified drawings · precise section references
New to this? Start hereA quick picture + helpful background

A message needs an address.

Think of a packet as a small addressed envelope. Devices pass it onward; transport protocols decide what delivery promises an application gets.

Helpful first, if these ideas are unfamiliar

These pictures are analogies to help you learn. The linked RFC explains the actual rules.

Related RFCs and changes

“Updates” changes part of an earlier RFC. “Obsoletes” replaces it. This list shows selected related documents.

KEY POINT

A smaller severity number means a more severe event; priority is not a trust score.

  • PRI is an angle-bracketed decimal value from 0 through 191. Facility MUST be 0–23 and severity MUST be 0–7; priority = facility × 8 + severity. Leading zeroes MUST NOT be used except for <0>. Facility/severity names in the tables are informational (§6.2.1).
  • This publication uses VERSION 1 immediately after PRI, with no separating space. Subsequent header fields are separated by one SP: TIMESTAMP HOSTNAME APP-NAME PROCID MSGID. HEADER MUST use seven-bit ASCII (§§6/6.2).
  • TIMESTAMP derives from RFC 3339 but requires uppercase T/Z, disallows leap seconds, and allows at most six fractional digits. An application incapable of obtaining system time MUST use NILVALUE, the hyphen -. Fractional seconds SHOULD be included when accuracy/performance permit (§6.2.3).
  • HOSTNAME identifies the original sender, with FQDN preferred; it need not identify the current relay. APP-NAME and MSGID SHOULD identify application and message type. PROCID is implementation-dependent, not necessarily an OS process ID or reliable restart identifier. NILVALUE rules differ by field (§§6.2.4–6.2.7).
  • Maximum header token lengths are 255 HOSTNAME, 48 APP-NAME, 128 PROCID and 32 MSGID printable ASCII characters. A hyphen stands for unavailable values; it is not a wildcard. A timestamp does not establish clock accuracy or authenticity.
DETAILS

Worked priority165 is the RFC’s facility20/severity5 example. The message example uses a fictional host. Field blocks are schematic, not proportional packet fields. Optional timeQuality structured data can describe timestamp quality (§7.1).

Read the RFC section ↗

All chapters in RFC 5424

Drawing view

Scroll the drawing to see every part. Playback controls stay above it.

RFC 9700 / CHAPTERS

Chapters

For full details, tables, algorithms, and exceptions, read the original RFC.

RFC status and corrections ↗