ELK Stack был успешно настроен.Выход Logstash для ElasticSearch с допустимыми типами
использование grokdebug.herokuapp.com
моих шаблонов Горки, также действителен и получение сбрасывали в ElasticSearch
filter {
if [type] == "some_log" {
grok {
match => { "message" => '%{WORD:word_1} %{TIME:time_1} %{DATE:date_1} %{NUMBER:number_1}'
}
overwrite => "message"
}
}
}
Это Grok разбор ввода является вполне корректным.
и выход
output {
elasticsearch {
protocol => "http"
}
}
Проблема все сброшенные переменные имеют тип String.
Как заставить их войти в их соответствующего типа в ElasticSearch (правильный тип карт)
time_1, дата_1 и Число_1 все имеет такой же тип, который имеет тип
"time_1":{
"type":"string",
"norms":{
"enabled":false
},
"fields":{
"raw":{
"type":"string",
"index":"not_analyzed",
"ignore_above":256
}
}
}
Я хочу дата_1 быть проиндексированы как тип даты, номер_1, который будет индексироваться как тип номера в поиске эластичности.
PS: Можно ли это сделать ?? определите поле типа Elasticsearch в Logstash.
OR - Как отправить это поле с соответствующим типом в ElasticSearch.
Благодаря
Можем ли мы сделать то же самое для даты и времени ?? –