2 " Language: /var/log/messages file
3 " Maintainer: Yakov Lerner <iler.ml@gmail.com>
4 " Latest Revision: 2008-06-29
5 " Changes: 2008-06-29 support for RFC3339 tuimestamps James Vega
7 if exists("b:current_syntax")
14 syn match messagesBegin display '^' nextgroup=messagesDate,messagesDateRFC3339
16 syn match messagesDate contained display '\a\a\a [ 0-9]\d *'
17 \ nextgroup=messagesHour
19 syn match messagesHour contained display '\d\d:\d\d:\d\d\s*'
20 \ nextgroup=messagesHost
22 syn match messagesDateRFC3339 contained display '\d\{4}-\d\d-\d\d'
23 \ nextgroup=messagesRFC3339T
25 syn match messagesRFC3339T contained display '\cT'
26 \ nextgroup=messagesHourRFC3339
28 syn match messagesHourRFC3339 contained display '\c\d\d:\d\d:\d\d\(\.\d\+\)\=\([+-]\d\d:\d\d\|Z\)'
29 \ nextgroup=messagesHost
31 syn match messagesHost contained display '\S*\s*'
32 \ nextgroup=messagesLabel
34 syn match messagesLabel contained display '\s*[^:]*:\s*'
35 \ nextgroup=messagesText contains=messagesKernel,messagesPID
37 syn match messagesPID contained display '\[\zs\d\+\ze\]'
39 syn match messagesKernel contained display 'kernel:'
42 syn match messagesIP '\d\+\.\d\+\.\d\+\.\d\+'
44 syn match messagesURL '\w\+://\S\+'
46 syn match messagesText contained display '.*'
47 \ contains=messagesNumber,messagesIP,messagesURL,messagesError
49 syn match messagesNumber contained '0x[0-9a-fA-F]*\|\[<[0-9a-f]\+>\]\|\<\d[0-9a-fA-F]*'
51 syn match messagesError contained '\c.*\<\(FATAL\|ERROR\|ERRORS\|FAILED\|FAILURE\).*'
54 hi def link messagesDate Constant
55 hi def link messagesHour Type
56 hi def link messagesDateRFC3339 Constant
57 hi def link messagesHourRFC3339 Type
58 hi def link messagesRFC3339T Normal
59 hi def link messagesHost Identifier
60 hi def link messagesLabel Operator
61 hi def link messagesPID Constant
62 hi def link messagesKernel Special
63 hi def link messagesError ErrorMsg
64 hi def link messagesIP Constant
65 hi def link messagesURL Underlined
66 hi def link messagesText Normal
67 hi def link messagesNumber Number
69 let b:current_syntax = "messages"