У меня есть файл журнала, содержащий журнал в этой форме
"{\"user_id\":\"79\",\"timestamp\":\"2016-12-28T11:10:26Z\",\"operation\":\"ver3 - Requested for recommended,verified handle information\",\"data\":\"\",\"content_id\":\"\",\"channel_id\":\"\"}"
для которого я написал конфигурацию logstash
input {
beats {
port => "5043"
}
}
filter{
grok {
match => { "message" => "%{QS:mydata}"}
}
json {
source => "message"
target => "parsedJson"
}
mutate {
add_field =>{
"user_id" => "%{[parsedJson.user_id]}"
"operation" => "%{[parsedJson][operation]}"
"data"=> "%{[parsedJson][operation]}"
}
}
}
output {
elasticsearch {
hosts => [ "localhost:9200" ]
}
}
в основном я пробовал много перестановок, чтобы получить значение, но в данных elasticsearch это похоже на изображение ниже. Я не могу получить данные из JSON и присвоить новое значение. пожалуйста помоги.