我想獲得消息的第一個字符以應用xml或json過濾器,但我甚至不知道如何啓動 ```如何在logstash過濾器中獲取消息的第一個字符
filter {
if [type]=="mom_rubens" {
if [message] = "<*" {
xml {
source => "message"
store_xml => false
xpath => [
"/APIOS_MOM_EVENT/IDENT/NO_EMIARTE/text()", "NO_EMIARTE",
"/APISTAT_EVENT/IDENT/NO_EMIARTE/text()", "NO_EMIARTE",
"/APIOS_MOM_EVENT/DATA/APIOS_EXPORT/METADATA/VECTORS/VECTOR","VECTORS",
"/APIOS_MOM_EVENT/DATA/APIOS_EXPORT/METADATA/VECTORS/VECTOR/@NAME","VECTOR_NAME",
"/APIOS_MOM_EVENT/INFO_EVENT/SENDER/text()","SENDER",
"/APISTAT_EVENT/INFO_EVENT/SENDER/text()","SENDER",
"/APIOS_MOM_EVENT/DATA/APIOS_EXPORT/METADATA/VECTORS/VECTOR/@ONLINE","ON_LINE",
"/APIOS_MOM_EVENT/DATA/APIOS_EXPORT/METADATA/VECTORS/VECTOR/@OFFLINE","OFF_LINE"
]
target => "xml"
}
}
else if [message] = "{*" {
json {
source => "message"
}
}
}
```
如果[消息] =「
```
感謝您的幫助
個最好的問候,紀堯姆
也許像'''如果[類型] == 「mom_rubens」{ 如果([消息] =〜/^){ XML { \t \t \t ...} 否則如果([消息] =〜/^{/){ JSON { 源=> 「消息」 } } }'''但似乎json總是被忽略 – glmrenard
我有它:)但即使消息是在kibana,它沒有被過濾'''if([message] =〜「^ \ <*」){ xml {''' – glmrenard