Назад | Перейти на главную страницу

События системного журнала Logstash Groking

У меня есть сервер logstash, отправляющий события на сервер elasticsearch, который отображает результаты в Kibana. Все работает довольно хорошо, за исключением того, что Kibana показывает 2 имени в поле хоста. Я использую следующий фильтр grok в logstash.

^(?:<%{POSINT:syslog_pri}>)?%{SYSLOGTIMESTAMP:timestamp} %{IPORHOST:host} (?:%{PROG:program}(?:\[%{POSINT:pid}\])?: )?%{GREEDYDATA:message}

Когда я использую отладчик Grok, все разбирается правильно. Однако, когда я просматриваю его в Кибане, он показывает следующее:

"host": [
  "logstash1",
  "servername.domain.com"
],

Где logstash1 - это имя моего сервера logstash, который выполняет синтаксический анализ и отправляет в elasticsearch. Я не уверен, почему он показывает как сервер logstash, так и фактический источник в качестве хоста. Как я могу удалить logstash1 из поля хоста? Примеры журналов:

Dec 18 00:00:08 servername.domain.com pam_rhosts_auth[24233]: allowed to user1@192.168.1.1 as user1

Возможность перезаписи кассы http://logstash.net/docs/1.3.1/filters/grok#overwrite

grok{
...
    overwrite => [ "host" ]
...
}