Skip to main content

HS.IHE.ATNA.Repository.Syslog.Common

class HS.IHE.ATNA.Repository.Syslog.Common extends %Library.RegisteredObject

Parse a Syslog message based on RFC5424.

The syslog header has the following ABNF [RFC5234] definition:
  • SYSLOG-MSG = HEADER SP STRUCTURED-DATA [SP MSG]
  • HEADER = PRI VERSION SP TIMESTAMP SP HOSTNAME SP APP-NAME SP PROCID SP MSGID

    The syslog field values have the following ABNF [RFC5234] definition:
  • PRI = "<" PRIVAL ">"
  • PRIVAL = 1*3DIGIT ; range 0 .. 191
  • VERSION = NONZERO-DIGIT 0*2DIGIT
  • HOSTNAME = NILVALUE / 1*255PRINTUSASCII
  • APP-NAME = NILVALUE / 1*48PRINTUSASCII
  • PROCID = NILVALUE / 1*128PRINTUSASCII
  • MSGID = NILVALUE / 1*32PRINTUSASCII
  • TIMESTAMP = NILVALUE / FULL-DATE "T" FULL-TIME
  • FULL-DATE = DATE-FULLYEAR "-" DATE-MONTH "-" DATE-MDAY
  • DATE-FULLYEAR = 4DIGIT
  • DATE-MONTH = 2DIGIT ; 01-12
  • DATE-MDAY = 2DIGIT ; 01-28, 01-29, 01-30, 01-31 based on month/year
  • FULL-TIME = PARTIAL-TIME TIME-OFFSET
  • PARTIAL-TIME = TIME-HOUR ":" TIME-MINUTE ":" TIME-SECOND [TIME-SECFRAC]
  • TIME-HOUR = 2DIGIT ; 00-23
  • TIME-MINUTE = 2DIGIT ; 00-59
  • TIME-SECOND = 2DIGIT ; 00-59
  • TIME-SECFRAC = "." 1*6DIGIT
  • TIME-OFFSET = "Z" / TIME-NUMOFFSET
  • TIME-NUMOFFSET = ("+" / "-") TIME-HOUR ":" TIME-MINUTE
  • STRUCTURED-DATA = NILVALUE / 1*SD-ELEMENT
  • SD-ELEMENT = "[" SD-ID *(SP SD-PARAM) "]"
  • SD-PARAM = PARAM-NAME "=" %d34 PARAM-VALUE %d34
  • SD-ID = SD-NAME
  • PARAM-NAME = SD-NAME
  • PARAM-VALUE = UTF-8-STRING ; characters '"', '\' and ']' MUST be escaped.
  • SD-NAME = 1*32PRINTUSASCII except '=', SP, ']', %d34 (")
  • MSG = MSG-ANY / MSG-UTF8
  • MSG-ANY = *OCTET ; not starting with BOM
  • MSG-UTF8 = BOM UTF-8-STRING
  • BOM = %xEF.BB.BF
  • UTF-8-STRING = *OCTET ; UTF-8 string as specified in RFC 3629
  • OCTET = %d00-255
  • SP = %d32
  • PRINTUSASCII = %d33-126
  • NONZERO-DIGIT = %d49-57
  • DIGIT = %d48 / NONZERO-DIGIT
  • NILVALUE = "-"

    Method Inventory

    Methods

    method ParseSyslogHeader(pSyslogHeader As %String, ByRef pSyslogArray As %ArrayOfDataTypes = $$$NULLOREF) as %Status

    Inherited Members

    Inherited Methods

    Subclasses

  • FeedbackOpens in a new tab