Logstash _grokparsefailure ошибка окна

Предупреждение для новичков!

Я учусь использовать logstash в Windows для демонстрации команде. Пожалуйста, посмотрите следующие конфигурации и результаты:

1)

 file content : 123

файл конфигурации:

input {
file {
    path => "C:\Users\xyz\Desktop\Demo\WriteText.txt"
    start_position => "beginning"
    }
    }

filter {
grok {
match => { "@message" => "%{GREEDYDATA:data}"}
}
}
output {
stdout { codec => rubydebug }
}

Моя командная строка показывает следующий вывод:

{
"path" => "C:\Users\xyz\Desktop\Demo\WriteText.txt",
"@timestamp" => 2017-06-20T16:18:33.956Z,
"@version" => "1",
"host" => "ABC",
"message" => "123"
}

// в выводе выше не отображается поле данных

2) содержание введенного текста: 789

config2:

grok {
 match => { "@message" => "%{NUMBER:data}"}
 }

вывод в командной строке:

output
{
"path" => "C:\Users\xyz\Desktop\Demo\WriteText.txt",
"@timestamp" => 2017-06-20T16:22:56.167Z,
"@version" => "1",
"host" => "ABC",
"message" => "789",
"tags" => [
[0] "_grokparsefailure"
]
}

Я получаю ошибку синтаксического анализа при вводе простого числа. Поэтому мне интересно, связана ли проблема с файлом windows .txt и кодировкой или чем-то еще, потому что Grok может анализировать его как GREEDYDATA, но не как NUMBER. и в обоих выходах нет тегов полей. Пожалуйста, помогите мне определить проблему.


person vssl    schedule 20.06.2017    source источник


Ответы (1)


Мой Grok-фильтр пытается разобрать поле @message, но его нет.

match => ["message", "% {GREEDYDATA: data}"] сделали свое дело.

person vssl    schedule 11.07.2017