Neolithik
@Neolithik
Системный администратор

Возможно ли в Logstash multiline codec использовать логические переменные и, или?

Добрый день

Возможно ли использование логических переменных в Logstash multiline codec при описании pattern? Как видно из примера ниже, ко мне из файла приходит лог, который содержит в себе ключевые значения по которым лог должен быть сшит в отдельные блоки и передан в БД как разные документы.

Пример: значений которые нужно применять при сшивании
input {
file {
# codec => "plain"
codec => multiline {
pattern => ["T0_INPUT_XML]|[someinfo]|[check]|[time]|[cashier]|["] #сшиваем до следующего T0_INPUT_
negate => true
what => next
}
path => "/home/logs/*.log"
start_position => "beginning"
tags => "from_file"
type => xml_log
}
}

Вся проблема в том что до следующего _INPUT_ в логе могут присутствовать или _OUTPUT_ или другое значение "T" (T1_ к примеру который способен принять значения INPUT/OUTPUT), которые также должны быть переданы как отдельные документы. Соответственно для поля pattern хочу задать несколько шаблонов обработки разделенных логической "or". Кто-то с подобным сталкивался? Можете ли дать примеры ?
  • Вопрос задан
  • 3564 просмотра
Решения вопроса 1
Neolithik
@Neolithik Автор вопроса
Системный администратор
Сам задал вопрос и сам ответил ))
input {
   file {
#       codec => "plain"
        codec => multiline {
        pattern => "^\b(T0_OUTPUT_XML)?|(T0_INPUT_XML)" ##создаем патерны (теги) по которым будет разбираться простыня
        negate => true
        what => "previous" ##определяет положение сшивающего тега(в данном случае в начале листа тег и инфа до следующего указаного в патерне)если ставить "next" то патерн попадает в предыдущий лист
        }
        path => "/home/logs/*.log"
        start_position => "beginning" ## определяет откуда начинать читать лист и в какой очеердности оно прилитает в вебинтерфейс в данном случае зеркалка.. надо исправить: -) 
        tags => "from_file"   
        type => xml_log
        }
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы