Logstash add_field nu este popularea valoare în schimb, este hardcoding sintaxă în index

0

Problema

Eu sunt încercarea de a crea noi ieșire index folosind 3 de intrare de index. În nouă ieșire index am nevoie pentru a popula câteva domenii specifice de intrare de index. Eu sunt încercarea de a crea câmp nou folosind add_field.este hardcoding ca '%{[index1name][field1inIndex1]}' în loc popularea valoare de index. Am incercat codul de mai jos:

input
{
elasticsearch{
hosts => ["hostname"]
index => "index1"
query => '{"query":{"match_all":{}}}'
docinfo => "true"
user => "uname"
password =>"pwd"
ssl=>"true"
}
elasticsearch {
#same like above for index2
}
elasticsearch {
#same like above for index3
}
}    
filter
{
mutate
{
add_field =>["newfieldname","%{[index1][fieldinindex1]}"]
}
}
output 
{
elasticsearch {
#creating new index here
}
}
logstash
2021-11-23 23:11:06
1

Cel mai bun răspuns

0

Dacă un sprintf de referință nu este înlocuit apoi se indică domeniul nu exista pe eveniment.

Indicele de nume nu este adăugat la numele câmpului de elasticsearch de intrare. (Acesta poate fi adăugat ca o parte din [@metadate] dacă activați docinfo opțiune.) Deci, dacă numele de domeniu pe documentul în index-ți citesc dintr-conține numele indexului ce ai nevoie este

mutate { add_field => { "newfieldname" => "%{[fieldinindex1]}" } }

Dacă vrei să indice numele în [newfieldname] atunci va trebui să utilizați o referință la acesta, de exemplu

mutate { add_field => { "newfieldname" => "%{[@metadata][_index]}_%{[fieldinindex1]}" } }
2021-11-24 00:55:23

Multumesc @Bursuc. de mai sus răspunsul tău este de lucru. Dar am docinfo => "adevărat" în plugin de intrare. Deci, ar trebui să ia indexname
slj

Ajustat răspuns pentru a afișa cum să utilizați nume de index.
Badger

În alte limbi

Această pagină este în alte limbi

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................