Входной сигнал logstash являетсяКак разбить большой вход json-файла в другой индекс поиска эластичности?
input {
file {
path => "/tmp/very-large.json"
type => "json"
start_position => "beginning"
sincedb_path => "/dev/null"
}
и образец файла JSON
{"type":"type1", "msg":"..."}
{"type":"type2", "msg":"..."}
{"type":"type1", "msg":"..."}
{"type":"type3", "msg":"..."}
Можно ли сделать их кормить в другом упругим поискового индекса, так что я могу обрабатывать их легче в будущем?
Я знаю, если это возможно, чтобы назначить их с tag
, то я могу сделать что-то вроде
if "type1" in [tags] {
elasticsearch {
hosts => ["localhost:9200"]
action => "index"
index => "logstash-type1%{+YYYY.MM.dd}"
flush_size => 50
}
}
Как сделать подобную вещь, глядя на конкретное значение поля JSon, например, type
в моем примере выше?
Ответ правильный, но только для справки, вы можете do: if [type] == "type1" – pandaadb