Size: a a a

2021 March 20

EM

Evgeniy Mihaylovsky in E.L.K.
Dmitriy
на работе осталось) в понедельник напомни
Окей. Спасибо
источник
2021 March 22

EM

Evgeniy Mihaylovsky in E.L.K.
Dmitriy
на работе осталось) в понедельник напомни
Напоминаю)
источник

D

Dmitriy in E.L.K.
Evgeniy Mihaylovsky
Напоминаю)
LOGSTASH
  if [docker][container][labels][com][docker][swarm][service][name] =~ /mcr-.*/ {
    grok {
      match => {
        "message" => [
          "(?<log_level>\w+)\:\ (?<log_message>.*)"
        ]
      }
    }
  }

FILEBEAT

filebeat.autodiscover:
  providers:
    - type: docker
      templates:
        - condition:
            regexp:
              docker.container.image: ".*"
          config:
            - type: docker
              containers.ids:
                - "${data.docker.container.id}"
              message_key: log
              multiline.pattern: "^ "
              multiline.negate: false
              multiline.match: after
              fields:
                env: dev

output.logstash:
  hosts: ["logstash:24248"]

processors:
  - add_docker_metadata: ~
источник

EM

Evgeniy Mihaylovsky in E.L.K.
Dmitriy
LOGSTASH
  if [docker][container][labels][com][docker][swarm][service][name] =~ /mcr-.*/ {
    grok {
      match => {
        "message" => [
          "(?<log_level>\w+)\:\ (?<log_message>.*)"
        ]
      }
    }
  }

FILEBEAT

filebeat.autodiscover:
  providers:
    - type: docker
      templates:
        - condition:
            regexp:
              docker.container.image: ".*"
          config:
            - type: docker
              containers.ids:
                - "${data.docker.container.id}"
              message_key: log
              multiline.pattern: "^ "
              multiline.negate: false
              multiline.match: after
              fields:
                env: dev

output.logstash:
  hosts: ["logstash:24248"]

processors:
  - add_docker_metadata: ~
Спасибо ❤️
источник

EM

Evgeniy Mihaylovsky in E.L.K.
Dmitriy
LOGSTASH
  if [docker][container][labels][com][docker][swarm][service][name] =~ /mcr-.*/ {
    grok {
      match => {
        "message" => [
          "(?<log_level>\w+)\:\ (?<log_message>.*)"
        ]
      }
    }
  }

FILEBEAT

filebeat.autodiscover:
  providers:
    - type: docker
      templates:
        - condition:
            regexp:
              docker.container.image: ".*"
          config:
            - type: docker
              containers.ids:
                - "${data.docker.container.id}"
              message_key: log
              multiline.pattern: "^ "
              multiline.negate: false
              multiline.match: after
              fields:
                env: dev

output.logstash:
  hosts: ["logstash:24248"]

processors:
  - add_docker_metadata: ~
Я так понял у тебя не последняя версия стека) Вроде как устаревшее решение
источник

D

Dmitriy in E.L.K.
да, но для 7.* работа add_docker_metadata не отличается
источник

EM

Evgeniy Mihaylovsky in E.L.K.
filebeat.autodiscover:
 providers:
 - type: docker
   templates:
     - config:
         - type: container
           paths:
             - /var/lib/docker/containers/${data.docker.container.id}/*.log
           execlude_lines: ["^\\s+[\\-`('.|_]"]
           fields:
             type: swarm
             app: nginx
           fields_under_root: true

Я сейчас использую такое решение. Оно отлично отрабатывает. Так как у нас в этом swarm так же крутится nginx, то требуется вынести nginx-access в отдельный индекс. Но вот в чем ситуация, как мне его словить? Грок по паттерну его не ловит и не словит, потому что log пишется в message
источник
2021 March 23

EM

Evgeniy Mihaylovsky in E.L.K.
Как думаете, это возможно?
источник
2021 March 25

EM

Evgeniy Mihaylovsky in E.L.K.
У меня попадает в индекс логи от докер сворма. Меня интересуют логи access от nginx и я написал паттерн, который отвечает моим требованиям. Но вот в чем не задача, по этому паттерну подходят и другие контейнеры. Подскажите, как можно вывести инфу только от nginx.
Имеется fields container.image.name: nginx:alpine, пытался сделать через if, почему то не попадает в индекс.
источник

EM

Evgeniy Mihaylovsky in E.L.K.
Решил. Нужно было сделать
if [container][image][name] == "nginx:alpine" {}
источник
2021 March 30

ma

maybe a microkotick in E.L.K.
Всем здрасте. Столкнулся с проблемой, что эластик начинает отставать, когда я подключаю к нему реплику.
логи идут по такому пути: докер -> json файл -> filebeat -> logstash -> elastic master -> elastic replica

отключаю реплику - скорость индексирования потихоньку растет и эластик догоняет логи по времени. подключаю реплику - скорость потихоньку падает.

при этом нагрузка на сервер небольшая. я выделил 64гб для кучи эластика и столько же оставил для кэша i/o.
еще смущает тот факт, что при нормальной работе (когда не отстает, с репликой) трафик до эластика 3 мегабита, а от эластика до реплики 30 мегабит.

как, где найти это бутылочное горлышко? на сервере стоят обычные винты, но нагрузка на i/o небольшая, при этом скорость индексации в пике достигает чуть больше 500 индексов в секунду. а с репликой плавно падает до 200
источник
2021 April 21

EM

Evgeniy Mihaylovsky in E.L.K.
Подскажите, у меня есть некий скрипт, который кладет инфу в лог. filebeat пытается его отправить в логстеш и крашится. Есть какой-то патерн, как дожен выглядит лог, чтобы избавиться от краша filebeat?
Такой формат лога сейчас:
Shell Access to $HOST as *$USER* from IP
источник

AZ

Alexey Zhukov in E.L.K.
Чтобы не происходило, Файлбит не должен крашиться. Какие ошибки пр  краше?
источник

EM

Evgeniy Mihaylovsky in E.L.K.
Уже все ок. Оказалось проблема не в формате лога, а в правах инпут файла) Всего лишь надо было об этом узнать в логах файлбита)
источник

AZ

Alexey Zhukov in E.L.K.
уже похоже на правду 😁
источник
2021 May 15

EM

Evgeniy Mihaylovsky in E.L.K.
Добрый день. Настраиваю себе elastic-cluster и словили какой-то баг. Создал keystore, создал временный файл с пассом, выдал ему 600, сделал systemctl set-environment ES_KEYSTORE_PASSPHRASE_FILE=file перезапускаю эластик и ловлю /usr/share/elasticsearch/bin/systemd-entrypoint: 7: /usr/share/elasticsearch/bin/systemd-entrypoint: cannot open /etc/elasticsearch/ks_secret.tmp: Permission denied Если я запускаю эластик сам (руками), то он просит меня ввести пасс от keystore,  я ввожу, нажимаю 2 раза энтер и только тогда он запускается. Version: 7.12.1
источник
2021 May 16

M

Mihail in E.L.K.
От какого пользователя запускается ES в "автоматическом", а не ручном режиме?
источник

EM

Evgeniy Mihaylovsky in E.L.K.
Elasticsearch
источник

M

Mihail in E.L.K.
Проверь, есть ли у этого пользователя права на чтение keystore
источник

EM

Evgeniy Mihaylovsky in E.L.K.
Да, есть. Пока что оставил keystore без пасса. Потом буду решать. А возможно каким либо образом запустить elasticsearch-setup-passwords удалив что либо. Сейчас просто пишу ансибл плейбук и реинсталить по кд тачку надоело.
источник