У меня есть настройка HTTP beat, которая опрашивает конечную точку и сохраняет данные в logstash.Я мог видеть события, используя определенный индекс на Kibana.Интервал был установлен каждые 5 секунд.
Однако я хочу, чтобы стек ELK собирал данные, которые меняются с течением времени (дельта-канал), а не все данные каждые 5 секунд.Есть ли способ сделать это?
Мой HTTPbeat.yml выглядит так:
httpbeat:
hosts:
# Each - Host endpoints to call. Below are the host endpoint specific configurations
-
# Optional cron expression, defines when to poll the host endpoint.
# Default is every 1 minute.
schedule: '@every 5s'
# The URL endpoint to call by Httpbeat
url: #sample end point
method: get
basic_auth:
# Basic authentication username
username:
# Basic authentication password
password:
output_format: json
#----------------------------- Logstash output --------------------------------
output.logstash:
# The Logstash hosts
hosts: ["localhost: 5400"]
logstash.conf выглядит следующим образом:
input {
# Accept input from the console.
beats {
port => "5400"
}
}
filter {
# Add filter here. This sample has a blank filter.
}
output {
# Output to the console.
stdout {
codec => "json"
}
elasticsearch {
hosts => [ "localhost:9200" ]
index => "test_jira2_idx"
}
}
Если ядостигните конечной точки через почтальона, размер тела JSON составляет около 1,08 МБ.Но при мониторинге индекса Kibana: test_jira2_idx он уже составляет 340 МБ за 1 час и постоянно увеличивается.
Это может быть связано с тем, что бит HTTP постоянно опрашивает одни и те же данные каждые 5 секунд.Кто-нибудь может предложить различные альтернативы для реализации экстракта корма дельта в ELK?
Я посмотрел на вход HTTP_POLLER для logstash - не уверен, может ли это помочь.
Примечание: я очень новичок в ELK