# util-linux v2.42.4 sys-utils/dmesg.c print_record: -x prints "%-6s:%-6s: " (facility_names, level_names), then each --time-format: raw "[%5ld.%06ld] ", delta "[<%12.06f>] ", raw with delta "[%5ld.%06ld <%12.06f>] ", ctime "[%a %b %e %H:%M:%S %Y] " with or without delta, reltime "[%b%e %H:%M] " or "[  %+8.06f] ", iso "%s " (lib/timeutils.c ISO_TIMESTAMP_COMMA_T with "%+03d:%02d"); the caller "[%*s] " follows
# A raw stamp alone is the kernel row's; dmesg prints a level only with -x. Lines from util-linux v2.42.4 tests/expected/dmesg
kern  :emerg : [    0.000000] example[0] ⇒ {"rule": "dmesg", "level": "critical", "leveled": true, "name": "kernel", "message": "example[0]", "device_ns": 0, "prefixed": true}
kern  :alert : [    1.000000] example[1] ⇒ {"rule": "dmesg", "level": "critical", "name": "kernel", "device_ns": 1000000000, "message": "example[1]"}
kern  :err   : [   27.000000] example[3] ⇒ {"rule": "dmesg", "level": "error", "name": "kernel", "device_ns": 27000000000, "message": "example[3]"}
kern  :warn  : [   64.000000] example[4] ⇒ {"rule": "dmesg", "level": "warn", "name": "kernel", "device_ns": 64000000000, "message": "example[4]"}
kern  :notice: [  125.000000] example[5] ⇒ {"rule": "dmesg", "level": "info", "leveled": true, "name": "kernel", "message": "example[5]"}
kern  :debug : [  343.000000] example[7] ⇒ {"rule": "dmesg", "level": "debug", "name": "kernel", "device_ns": 343000000000, "message": "example[7]"}
user  :notice: [ 2197.000000] example[13] ⇒ {"rule": "dmesg", "level": "info", "leveled": true, "name": "", "device_ns": 2197000000000, "message": "example[13]"}
daemon:emerg : [13824.000000] example[24] ⇒ {"rule": "dmesg", "level": "critical", "name": "", "message": "example[24]"}
kern  :emerg : [    0.000000] [T1] Linux version 6.6.4-arch1-1 (linux@archlinux) (gcc (GCC) 13.2.1 20230801, GNU ld (GNU Binutils) 2.41.0) #1 SMP PREEMPT_DYNAMIC Mon, 04 Dec 2023 00:29:19 +0000 ⇒ {"rule": "dmesg", "level": "critical", "name": "kernel", "message": "[T1] Linux version 6.6.4-arch1-1 (linux@archlinux) (gcc (GCC) 13.2.1 20230801, GNU ld (GNU Binutils) 2.41.0) #1 SMP PREEMPT_DYNAMIC Mon, 04 Dec 2023 00:29:19 +0000", "device_ns": 0}
kern  :warn  : [    0.209670] [T14]   #1  #3  #5  #7 ⇒ {"rule": "dmesg", "level": "warn", "name": "kernel", "message": "[T14]   #1  #3  #5  #7", "device_ns": 209670000}
user  :notice: [    9.398562] [T30] user network daemon initialization complete ⇒ {"rule": "dmesg", "level": "info", "name": "", "device_ns": 9398562000, "message": "[T30] user network daemon initialization complete"}
[    8.000000 <    7.000000>] example[2] ⇒ {"rule": "dmesg", "level": "info", "leveled": false, "name": "kernel", "message": "example[2]", "device_ns": 8000000000}
[    0.000000 <    0.000000>] [T1] Linux version 6.6.4-arch1-1 (linux@archlinux) (gcc (GCC) 13.2.1 20230801, GNU ld (GNU Binutils) 2.41.0) #1 SMP PREEMPT_DYNAMIC Mon, 04 Dec 2023 00:29:19 +0000 ⇒ {"rule": "dmesg", "level": "info", "leveled": false, "name": "kernel", "device_ns": 0, "message": "[T1] Linux version 6.6.4-arch1-1 (linux@archlinux) (gcc (GCC) 13.2.1 20230801, GNU ld (GNU Binutils) 2.41.0) #1 SMP PREEMPT_DYNAMIC Mon, 04 Dec 2023 00:29:19 +0000"}
[<    7.000000>] example[2] ⇒ {"rule": "dmesg", "level": "info", "leveled": false, "name": "kernel", "message": "example[2]", "device_ns": null}
[Feb13 23:31] [Fri Feb 13 23:31:30 2009 <    0.000000>] example[0] ⇒ {"rule": "dmesg", "level": "info", "name": "kernel", "message": "example[0]", "device_ns": null}
[  +7.000000] [Fri Feb 13 23:31:38 2009 <    7.000000>] example[2] ⇒ {"rule": "dmesg", "level": "info", "name": "kernel", "message": "example[2]", "device_ns": null}
[ +19.000000] [Fri Feb 13 23:31:57 2009 <   19.000000>] example[3] ⇒ {"rule": "dmesg", "level": "info", "name": "kernel", "message": "example[3]"}
2009-02-13T23:31:30,123456+00:00 [<    0.000000>] example[0] ⇒ {"rule": "dmesg", "level": "info", "name": "kernel", "message": "example[0]", "device_ns": null}
[    8.000000 <    7.000000>] [Fri Feb 13 23:31:38 2009] example[2] ⇒ {"rule": "dmesg", "level": "info", "name": "kernel", "message": "example[2]", "device_ns": 8000000000}
[Fri Feb 13 23:31:30 2009] [T0] line zero ⇒ {"rule": "dmesg", "level": "info", "leveled": false, "name": "kernel", "message": "[T0] line zero", "device_ns": null}
2009-02-13T23:31:31,123456+00:00 [T1] new ⇒ {"rule": "dmesg", "level": "info", "name": "kernel", "message": "[T1] new"}
[Feb13 23:31] [T0] line zero ⇒ {"rule": "dmesg", "level": "info", "name": "kernel", "message": "[T0] line zero"}
[  +1.000000] [T2] two ⇒ {"rule": "dmesg", "level": "info", "name": "kernel", "message": "[T2] two"}
# constructed [Mon Mar  2 04:05:06 2026] usb 1-1: new high-speed USB device number 2 using xhci_hcd ⇒ {"rule": "dmesg", "level": "info", "leveled": false, "name": "kernel", "message": "usb 1-1: new high-speed USB device number 2 using xhci_hcd"}
# constructed [Wed Oct 21 14:03:01 2026] usb 1-1: new high-speed USB device number 2 using xhci_hcd ⇒ {"rule": "dmesg", "level": "info", "name": "kernel", "message": "usb 1-1: new high-speed USB device number 2 using xhci_hcd"}
# constructed 2026-10-21T14:03:01,123456+02:00 usb 1-1: reset high-speed USB device number 2 using xhci_hcd ⇒ {"rule": "dmesg", "level": "info", "name": "kernel", "message": "usb 1-1: reset high-speed USB device number 2 using xhci_hcd"}
# constructed [Mar 2 04:05] usb 1-1: reset ⇒ {"rule": "dmesg", "level": "info", "name": "kernel", "message": "usb 1-1: reset"}
# constructed kern  :info  : [Wed Oct 21 14:03:01 2026] usb 1-1: new device ⇒ {"rule": "dmesg", "level": "info", "leveled": true, "name": "kernel", "message": "usb 1-1: new device", "device_ns": null}
# constructed kern  :err   : usb 1-1: device descriptor read/64, error -71 ⇒ {"rule": "dmesg", "level": "error", "name": "kernel", "message": "usb 1-1: device descriptor read/64, error -71"}
# constructed local7:info  : [   12.000000] acme: injected from user space ⇒ {"rule": "dmesg", "level": "info", "name": "", "device_ns": 12000000000, "message": "acme: injected from user space"}
# constructed authpriv:warn  : [   12.000000] eight letters fill the column ⇒ {"rule": "dmesg", "level": "warn", "name": "", "message": "eight letters fill the column"}
# the raw stamp alone and with the caller is the kernel row's; dmesg -r is a level prefix on it
[    0.000000] [T0] line zero ⇒ {"rule": "linux", "level": "info", "name": "kernel", "device_ns": 0, "message": "[T0] line zero"}
[    0.000000] [Fri Feb 13 23:31:30 2009] 2009-02-13T23:31:30,123456+00:00 example[0] ⇒ {"rule": "linux", "level": "info", "name": "kernel", "device_ns": 0, "message": "[Fri Feb 13 23:31:30 2009] 2009-02-13T23:31:30,123456+00:00 example[0]"}
# constructed <3>[   27.000000] example[3] ⇒ {"rule": "syslog", "level": "error", "name": "kernel", "device_ns": 27000000000, "message": "example[3]"}
# a facility or level dmesg does not print, a stamp of another shape, and a level word after the stamp
# constructed kern  :fatal : [    0.000000] not a dmesg level ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "kern  :fatal : [    0.000000] not a dmesg level"}
# constructed kernel:err   : [    0.000000] not a facility ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "kernel:err   : [    0.000000] not a facility"}
# constructed kern:err: [    0.000000] the columns are six wide ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "kern:err: [    0.000000] the columns are six wide"}
# constructed [Wed Oct 21 14:03:01.123 2026] milliseconds ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "[Wed Oct 21 14:03:01.123 2026] milliseconds"}
# constructed [Wed Oct 21 14:03:01 2026]no space ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "[Wed Oct 21 14:03:01 2026]no space"}
# constructed [Wed Oct 21 14:03:01 2026] ERROR a level word belongs to a layout ⇒ {"rule": "layout", "level": "error", "message": "a level word belongs to a layout"}
# constructed [Wed Oct 21 14:03:01 2026] [error] [client 10.0.0.5] the level bracket is httpd 2.2 ⇒ {"rule": "apache", "level": "error", "message": "[client 10.0.0.5] the level bracket is httpd 2.2"}
# constructed 2026-10-21T14:03:01.123456+02:00 a dot before the microseconds ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "2026-10-21T14:03:01.123456+02:00 a dot before the microseconds"}
# constructed [<7.000000>] delta without padding ⇒ {"rule": "dmesg", "level": "info", "name": "kernel", "message": "delta without padding"}
# constructed [+7.000000] reltime without padding ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "[+7.000000] reltime without padding"}
# constructed [Feb 13 23:31] reltime pads the day, not the month ⇒ {"rule": "plain", "level": "info", "leveled": false, "message": "[Feb 13 23:31] reltime pads the day, not the month"}
