Ошибки Logstash Grok - PullRequest
       72

Ошибки Logstash Grok

0 голосов
/ 18 октября 2018

Я получил следующие журналы в формате json, как это лучше всего сделать, так что у меня есть поле, созданное для Key.Спасибо за ваше время.

Журналы:

2018-10-17 16:20:04,358 WARNING VID_DROPS {"JITTER": 0.1, "INTVL": 6, "DATE": "Wed Oct 17 15:53:45 2018", "SOURCEIP": "192.168.12.1:22100", "ERRORS": 0.02, "LOSTPKT": 34, "FLOW": 116288, "MCAST": "239.0.1.102:1000", "SWITCH": "switc01", "INTERFACE": "TenGigE0/0/2/0", "CLASS": "Policy_VID"}

Вот фильтр, который я получил, кажется, не работает:

     grok  {
   match => {"message" => "%{TIMESTAMP_ISO8601:timestamp} %{WORD:loglevel} %{WORD:VID_DROPS} %{NOTSPACE:json1}" }
   remove_field => [ "message" ]
  } 
json { source => "json1" remove_field => [ "json1" ] }

1 Ответ

0 голосов
/ 19 октября 2018

Как упоминалось в бодах, вам нужно использовать GREEDYDATA, чтобы соответствовать всему слову после слова VID_DROPS.Кроме того, существует шаблон по умолчанию для соответствия лог-уровню, %{LOGLEVEL:loglevel}, поэтому вам не нужно использовать WORD,

%{TIMESTAMP_ISO8601:timestamp} %{LOGLEVEL:loglevel} %{WORD:VID_DROPS} %{GREEDYDATA:json1}

Будет выводить,

{
  "timestamp": [
    [
      "2018-10-17 16:20:04,358"
    ]
  ],
  "YEAR": [
    [
      "2018"
    ]
  ],
  "MONTHNUM": [
    [
      "10"
    ]
  ],
  "MONTHDAY": [
    [
      "17"
    ]
  ],
  "HOUR": [
    [
      "16",
      null
    ]
  ],
  "MINUTE": [
    [
      "20",
      null
    ]
  ],
  "SECOND": [
    [
      "04,358"
    ]
  ],
  "ISO8601_TIMEZONE": [
    [
      null
    ]
  ],
  "loglevel": [
    [
      "WARNING"
    ]
  ],
  "VID_DROPS": [
    [
      "VID_DROPS"
    ]
  ],
  "json1": [
    [
      "{"JITTER": 0.1, "INTVL": 6, "DATE": "Wed Oct 17 15:53:45 2018", "SOURCEIP": "192.168.12.1:22100", "ERRORS": 0.02, "LOSTPKT": 34, "FLOW": 116288, "MCAST": "239.0.1.102:1000", "SWITCH": "switc01", "INTERFACE": "TenGigE0/0/2/0", "CLASS": "Policy_VID"}"
    ]
  ]
}

Вы можетепроверить это на https://grokdebug.herokuapp.com/

...