Как получить sh логов, чтобы упростить поиск в filebeat мгновенно? - PullRequest
0 голосов
/ 10 февраля 2020

слышать, это мой файлbeat.yml

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - ../typescript/rate-limit-test/logs/*.log
  json.message_key: "message"
  json.keys_under_root: true
  json.overwrite_keys: true
  scan_frequency: 1s

filebeat.config.modules:
  path: ${path.config}/modules.d/*.yml
  reload.enabled: false

setup.template.settings:
  index.number_of_shards: 1

logging.level: debug

output.elasticsearch:
  hosts: ["34.97.108.113:9200"]
  index: "filebeat-%{+yyyy-MM-dd}"
setup.template:
  name: 'filebeat'
  pattern: 'filebeat-*'
  enabled: true
setup.template.overwrite: true
setup.template.append_fields:
- name: time
  type: date

processors:
  - drop_fields:
      fields: ["agent","host","ecs","input","log"]

setup.ilm.enabled: false`

Я изменил scan_frequncy, ноasticsearch не смог получить журналы быстрее

Как я могу получить журналы вasticsearch мгновенно?

Пожалуйста, помогите мне ..

1 Ответ

1 голос
/ 10 февраля 2020

В эластичном поиске никогда не будет «мгновенно» доступного логина. Файл должен просматриваться в течение значительного количества изменений или времени, затем вновь добавленные строки должны быть отправлены вasticsearch в массовом запросе и проиндексированы в соответствующий сегмент на правильном узле кластера. Задержка сети, TLS, аутентификация + авторизация, одновременная загрузка записи / поиска: все это влияет на «мгновенный» опыт.

Скорость приема журнала и NRT (поиск в режиме реального времени) зависит от многих факторов и параметры конфигурации вasticsearch и filebeat.

Что касается настройки эластичного поиска для скорости индексации, ознакомьтесь с этой документацией и примените то, что вы пропустили. Краткий обзор:

  • Отключить подкачку и включить блокировку памяти (bootstrap.memory_lock: true)
  • Рассмотреть возможность уменьшения индекса index.refresh_interval (по умолчанию до 1 с), чтобы очистить документы чаще (производит больше операций ввода-вывода в кластере)

Для Filebeat, также имеется хорошая документация по настройке , но в целом я вижу следующие параметры:

  • Попробуйте разные значения output.elasticsarch.bulk_max_size (по умолчанию размер партии 50) и следите за скоростью приема. Для каждой конфигурации кластера существуют различные оптимальные настройки.
  • В сценарии высокой нагрузки ios, когда журналы пишутся быстро, рассмотрите возможность увеличения числа рабочих output.elasticsarch.workers (по умолчанию 1)
  • В противоположном сценарии, при записи всего нескольких строк журнала, рассмотрите возможность увеличения значения close_inactive и scan_frequency для харвестера. Указание более подходящего backoff повлияет на то, насколько активно Filebeat проверяет файлы на наличие обновлений.
...