grok match

Fórumok

Hali,

Kb. ez az architektúra: logforrás -> syslog szerver (syslog-ng) -> logstash -> elastic <- kibana

Annyit szeretnék csinálni, hogy ha az érkező logban szerepel egy bizonyos string, akkor beállítanék egy plusz mezőt.Mondjuk ez a string érkezik:


Jun 21 13:39:22 MINTA-[szerverenként más serialnumber].my.domain.com sshd satöbbi

Erre én valami hasonlót képzeltem:


filter {
  grok {
    match => { message => "^(?<timestamp>%{MONTH} %{MONTHDAY} %{TIME}) MINTA\-.*.my.domain.com .*" }
    add_field => { "source_type" => "akármi" }
  }
}

Ez látszólag nem _nagyon_ hibás, mert a logstash szó nélkül elindul.
De Kibanában nem jelennek meg source_type mezők és nincs találat erre: "*akármi*"

A szabály rossz, vagy a koncepció? :)

Hozzászólások

Rég csináltam ilyet, de első körben megnézném, hogy a message-re tényleg match-el-e a regex... pl tuti benne van ez a rész: ^(?%{MONTH} %{MONTHDAY} %{TIME}) ?