Я пытаюсь создать простой приветственный мир для ELK и иметь возможность просматривать отчеты о кибане через Интернет. Я установил kibana, logstash, nginx и эластичный поиск. Вот мой /etc/logstash/conf.d/10-syslog.conf
:
input {
file {
path => [ "/var/log/*.log", "/var/log/messages", "/var/log/syslog" ]
type => "syslog"
}
}
output {
elasticsearch { host => localhost }
stdout { codec => rubydebug }
}
filter {
if [type] == "syslog" {
grok {
match => { "message" => "%{SYSLOGTIMESTAMP:syslog_timestamp} %{SYSLOGHOST:syslog_hostname} %{DATA:syslog_program}(?:\[%{POSINT:syslog_pid}\])?: %{GREEDYDATA:syslog_message}" }
add_field => [ "received_at", "%{@timestamp}" ]
add_field => [ "received_from", "%{host}" ]
}
syslog_pri { }
date {
match => [ "syslog_timestamp", "MMM d HH:mm:ss", "MMM dd HH:mm:ss" ]
}
}
}
Я могу получить доступ к Кибане из Интернета. Однако я могу видеть отчеты из-за ошибки в Kibana, когда я нажимаю Dashboard, Visualize или Discover:
Index Patterns: Please specify a default index pattern
Как именно это указать? Я просто хочу пока упростить.
Kibana использует «шаблоны индекса» для визуализации данных, хранящихся в ваших индексах elasticsearch.
Вам нужно нажать на конечную точку restful elasticsearch и проверить, как названы ваши индексы, выполнив
curl -X GET <elasticsearchIP>:<elasticsearchport>/_cat/indices?v
Это перечислит все индексы. Затем в кибане перейдите в Управление -> Шаблоны индекса -> Создать шаблоны индекса.
Здесь вы пишете регулярное выражение, которое соответствует одному или нескольким вашим индексам elasticsearch. Например, если ваши индексы похожи на мои:
logstash-2018.10.29
logstash-2018.11.14
вы можете написать шаблон индекса с именем log *, и он будет отображать данные из обоих этих индексов logstash
Просто зайдите в Kibana -> Management -> Advanced Settings и заполните поле defaultIndex. Конечно, необходимо, чтобы этот индекс существовал в ES.