ELK: различия между версиями
Материал из noname.com.ua
Перейти к навигацииПерейти к поискуSirmax (обсуждение | вклад) |
Sirmax (обсуждение | вклад) |
||
Строка 30: | Строка 30: | ||
==Elasticsearch== |
==Elasticsearch== |
||
+ | * Важно: elasticsearch/elasticsearch2 примеры настройки которых встречаются в интернете уже не поддерживаются и в моем дистрибутиве отсутвуют. |
||
+ | <BR> |
||
+ | Пример конфигурационного файла |
||
<PRE> |
<PRE> |
||
destination d_elasticsearch_http { |
destination d_elasticsearch_http { |
||
Строка 55: | Строка 58: | ||
}; |
}; |
||
</PRE> |
</PRE> |
||
+ | |||
+ | |||
+ | * elasticsearch-http - имя модуля |
||
+ | * index("syslog-ng-${YEAR}${MONTH}${DAY}") |
||
+ | * type("syslog-ng") |
||
+ | * url("127.0.0.1:9200/_bulk") |
||
+ | * workers(4) |
||
+ | * batch_lines(128) |
||
+ | * batch_timeout(10000) |
||
+ | * timeout(100) |
||
+ | * template("$(format-json --scope rfc5424 --scope dot-nv-pairs --rekey .* --shift 1 --scope nv-pairs --key ISODATE @timestamp=${ISODATE})") |
||
=Cсылки= |
=Cсылки= |
Версия 16:43, 5 августа 2021
ELK на минималках
Эта заметка описывает минимальную конфигурацию для частного случая - получения в syslog сообщений от свитчей.
Логика работы
- свитч отправляет сообщение по UDP
- syslog-ng ловит сообщение и пишет его в файл
- файл разбирает filebeat и отправляет данные в логстеш
- logstash пишет в elasticserach
- логи в elasticsearch смотреть через kibana
- Кроме этого syslog-ng пишет все логи в Elasticsearch напрямую но в другой индекс (который хранится меньше времени)
- старые файлы удаляет logrotate
- старые индексы удаляет TODO!!!
Syslog-Ng
Starting with syslog-ng version 3.6.1 the default system() source on Linux systems using systemd uses journald as its standard system() source.
Общая настройка syslog-ng
Elasticsearch
- Важно: elasticsearch/elasticsearch2 примеры настройки которых встречаются в интернете уже не поддерживаются и в моем дистрибутиве отсутвуют.
Пример конфигурационного файла
destination d_elasticsearch_http { elasticsearch-http( index("syslog-ng-${YEAR}${MONTH}${DAY}") type("syslog-ng") url("127.0.0.1:9200/_bulk") # workers(4) batch_lines(128) # batch_timeout(10000) timeout(100) template("$(format-json --scope rfc5424 --scope dot-nv-pairs --rekey .* --shift 1 --scope nv-pairs --key ISODATE @timestamp=${ISODATE})") ); }; destination d_elastic_debug { file("/var/log/elasticsearch_debug.log");. }; log { source(s_src); destination(d_elasticsearch_http); flags(flow-control); };
- elasticsearch-http - имя модуля
- index("syslog-ng-${YEAR}${MONTH}${DAY}")
- type("syslog-ng")
- url("127.0.0.1:9200/_bulk")
- workers(4)
- batch_lines(128)
- batch_timeout(10000)
- timeout(100)
- template("$(format-json --scope rfc5424 --scope dot-nv-pairs --rekey .* --shift 1 --scope nv-pairs --key ISODATE @timestamp=${ISODATE})")