Я изучаю ELK и пытаюсь выступить в качестве POC для своего проекта. Я применяю фильтр KV для примеров журналов интеграции из моего проекта, и я мог видеть, что в результате появляется много дополнительных полей, поэтому я попытался применить фильтр обрезки и внести определенные поля в белый список. Я вижу, как журналы печатаются на сервере logstash, но журналы не будут выполнять эластичный поиск. Если я сниму фильтр, он перейдет к эластичному поиску. Посоветуйте, пожалуйста, как дальше отлаживать этот вопрос.
filter {
kv {
field_split => "{},?\[\]"
transform_key => "capitalize"
transform_value => "capitalize"
trim_key => "\s"
trim_value => "\s"
include_brackets => false
}
prune
{
whitelist_names => [ "App_version", "Correlation_id", "Env", "Flow_name", "host", "Instance_id", "log_level","log_thread", "log_timestamp", "message", "patient_id", "status_code", "type", "detail"]
}
}
output {
elasticsearch {
hosts => ["http://localhost:9200"]
index => "mule-%{+YYYY.MM.dd}"
#user => "elastic"
#password => "changeme"
}
stdout { codec => rubydebug }
}
Мне также нужны еще два предложения,
Я также пытаюсь использовать фильтр grok в начальных журналах и пытаюсь взять поля уровня журнала (время и тип журнала) из образца журнала и отправить оставшиеся журналы в фильтр KV. Есть ли какая-нибудь ссылка, пожалуйста, поделитесь ею. Это то, что я пробовал для этого. но получается как _grokparsefailure. Я передал msgbody фильтру kv с опцией источника.
grok {
match => { "message" => "%{TIMESTAMP_ISO8601:timestamp}\s+%{LOGLEVEL:loglevel}\s+%{GREEDYDATA:msgbody}"}
overwrite => [ "msgbody" ]
}
У меня есть поля сообщений в образцах журналов, как показано ниже. Когда данные поступают в Kibana, я вижу два тега поля сообщения: один с полным журналом, а другой с правильным сообщением (выделено). Будет ли работать мутация в этом случае? Есть ли способ изменить полное имя журнала на другое ??
[2020-02-10 11: 20: 07.172] ИНФОРМАЦИЯ Mule.api [[MuleRuntime] .cpuLight.04: [main-api-test] .api-main.CPU_LITE @ 256c5cf5: [main-api-test] .main -api-main / processors / 0 / processors / 0.CPU_LITE @ 378f34b0]: событие: 00000003 {app_name = main-api-main, app_version = v1, env = Test, timestamp = 2020-02-10T11: 20: 07.172Z , log = {correlation_id = 00000003, Patient_id = 12345678, instance_id = hospital, message = Start of System API, flow_name = main-api-main}}