Добрый день.
Пытаюсь отправить лог звонков из asterisk в Elasticsearch
Схема такая
Asterisk складывает лог в файл /var/log/asterisk/cdr-csv/Master.csv
с помощью filebeat пересылаю в logstash
а logstash уже все записывает в elasticsearch
как поправить?
я понимаю, что проблема в кодировке, но где ее править на стороне отправителя или получателя?
как понимаю можно сразу писать в elastic, но тут тоже проблема. как только начинаю писать в elastic он сразу "встает" колом и перестает принимать данные.
[2017-09-19T10:04:58,272][WARN ][logstash.codecs.line] Received an event that has a different character encoding than you configured. ", :expected_charset=>"UTF-8"}
Спасибо. проблема была именно в этом.
пробовал отправить данные сразу в elastic. данные приходят, но одной строкой, а в логе у меня CSV формат.
понимаю, что можно данные отправлять сначала в logstash, а уже в нем в filter с помощью csv{} разбить.
но в logstash у меня данные не приходят. А в логах filebeat получаю
INFO No non-zero metrics in the last 30s
насколько я понимаю данное сообщение говорит об отсутствие новых данных в файле.
я добавляю параметр
Про registry file читал. его при каждом перезапуски службы удалял.
в лог файлах встречаются ip адреса хотел попробовать с картами поиграться, а как понимаю без logstash это не получится.
так же наткнулся на строчку в логах filebeat
ERR Failed to publish events caused by: write tcp X.X.X.X:56906->Y.Y.Y.Y:8084: wsasend: An existing connection was forcibly closed by the remote
но при уровне логирования debug
logging:
level: debug
в логах пишит, что все отправлено
2017-09-19T21:38:09+04:00 DBG 2 events out of 2 events sent to logstash. Continue sending
2017-09-19T21:38:09+04:00 DBG send completed
Похоже, что это баг в документации или в плагине. Пока выясняем - можно воспользоваться установкой document_type или засунуть что-нибудь в tags или fields.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.