У меня есть приложение Java, которое записывает в файл журнала в формате json. Поля, которые входят в журналы, являются переменными. Logstash считывает этот файл журнала и отправляет его в Kibana.Панель терминов Logstash + Kibana без разрыва слов
Я настроил logstash со следующим файлом:
input {
file {
path => ["[log_path]"]
codec => "json"
}
}
filter{
json {
source => "message"
}
date {
match => [ "data", "dd-MM-yyyy HH:mm:ss.SSS" ]
timezone => "America/Sao_Paulo"
}
}
output {
elasticsearch_http {
flush_size => 1
host => "[host]"
index => "application-%{+YYYY.MM.dd}"
}
}
Я сумел показать правильно все в Kibana без отображения. Но когда я пытаюсь создать панель терминов, чтобы показать количество серверов, которые отправили эти сообщения, у меня возникла проблема. У меня есть поле, называемое сервером в моем json, которое показывает имя сервера (например: a1-name-server1), но панель терминов разделяет имя сервера из-за «-». Также я хотел бы подсчитать количество раз, когда появляется сообщение об ошибке, но та же проблема возникает, поскольку панель терминов разделяет сообщение об ошибке из-за пробелов.
Я использую Kibana 3 и Logstash 1.4. Я много искал в Интернете и не нашел решения. Я также пробовал использовать .raw из logstash, но это не сработало.
Как я могу управлять этим?
Спасибо за помощь.
Нужно ли передавать точное имя поля вместо «field_name», или просто это будет работать для всех полей? – brunodahora
@brunodahora Вы должны указать имя поля. – Pigueiras