Я использую ELK для обработки и мониторинга файлов журналов значительного размера. Я загружаю журналы из локальной файловой системы.
Но я сталкиваюсь с несколькими проблемами:
- Анализ с использованием LogStash очень медленный из-за большого размера данных. Это становится медленнее с увеличением плагинов фильтра. (Это заняло более 4 дней для 3,2 ГБ журналов!)
- Выполнение вызовов API и построение визуализаций в Кибане по этим показателям тоже медленное.
Как я могу решить эти проблемы?
- Переход на облачные решения: AWS или Google Cloud? Но это может повлечь за собой
дополнительные расходы.
- Совершенствование методов индексации. Как я могу добиться этого в ES?
Любая помощь будет полезной. Спасибо!
ETA:
Моя конфигурация logstash:
input {
file {
path => "/home/adb/data/**/**/*.gz" #path to subfolder (2nd level) containing .gz files
mode => "read"
file_completed_action => "log"
file_completed_log_path => "/home/adb/data/log.txt"
}
}
filter {
csv {
separator => "&"
columns => ["T", "D", "CID", "RT", "RP" ...]
}
kv {
source => "RP"
target => "RP"
value_split => "#"
field_split => "*"
}
mutate {
split => { "RT" => "*" }
}
date {
match => ["T", "yyyy-MM-dd HH:mm:ss"]
timezone => "UTC"
target => "ET"
}
mutate {
convert => {
"RT" => "integer"
}
}
}
output {
elasticsearch {
hosts => "localhost"
index => "trial1"
document_type => "A_C"
}
stdout {}
}