У меня есть переменная 'worflow' в коде, и как только любое событие соответствует этому фильтру, я хочу сохранить его для следующих событий как есть. Проблема - с помощью «Добавить поле» для события, которое фактически содержит рабочий процесс, значение рабочего процесса отображается в csv, но для других событий отображается% {рабочий процесс} (как есть). Пожалуйста, предложите любой способ для этого.
input {
file{
path => "D:/alerts extracted from mails/*.log"
start_position => beginning
sincedb_path=>"NUL"
}
}
filter {
grok{
match=> {"message" => "(?<mess_time>%{DAY} %{MONTH} %{MONTHDAY} %{TIME} %{YEAR}) : %{DATA:Title}> %{WORD:Code} Workflow: (\[%{WORD:workflow}\]) %{GREEDYDATA:info}"}
match=> {"message" => "(?<mess_time>%{DAY} %{MONTH} %{MONTHDAY} %{TIME} %{YEAR}) : %{DATA:Title}> %{WORD:Code} %{GREEDYDATA:info}"}
}
if "_grokparsefailure" in [tags]{
drop { }
}
mutate {
add_field => { "client_id" => "BP" }
add_field => { "portfolio_id" => "NAGP" }
add_field => { "resource_id" => " " }
add_field => { "resource_name" => "%{workflow}" }
add_field => { "lob" => "creditrisk" }
add_field => { "mess" => "%{info} }
}
}
output{
csv{
fields =>["client_id","portfolio_id","resouce_id","resource_name","lob","mess_time","mess"]
path => "C:/Users/saavi.verma/Downloads/logstash-7.6.2/output_files/output1.csv"
}
}