Hi team, I face a problem when i try to decode this log below where if i set the prematch i can get the value out of the regex item(order) but if i set to program_name, i cannot get the regex value as u see the result below:
Nov 2 12:50:48 firewall-1 Firewall: Allowed CONN=vpn MAC= SRC=xx.xx.xx.xx DST=xx.xx.xx.xx LEN=xx TOS=0x00 PREC=0x00 TTL=xxx ID=xxx DF PROTO=TCP SPT=xxx DPT=xxx WINDOW=xxx RES=0x00 SYN URGP=0 MARK=0x10
**Phase 1: Completed pre-decoding.
full event: 'Nov 2 12:50:48 firewall-1 Firewall: Allowed CONN=vpn MAC= SRC=xx.xx.xx.xx DST=xx.xx.xx.xx LEN=xx TOS=0x00 PREC=0x00 TTL=xxx ID=xxx DF PROTO=TCP SPT=xxx DPT=xxx WINDOW=xxx RES=0x00 SYN URGP=0 MARK=0x10'
timestamp: 'Nov 2 12:50:48'
hostname: 'firewall-1'
program_name: 'Firewall'
**Phase 2: Completed decoding.
name: 'firewall'
It only stop at name: firewall where i should have a lot more value that supposedly to be filled. Below is my decoder:
<decoder name="firewall">
<program_name>Firewall</program_name>
</decoder>
<decoder name="firewall_child">
<parent>firewall</parent>
<regex>^ (\.+) CONN=(\.+) MAC= SRC=(\d+.\d+.\d+.\d+) DST=(\d+.\d+.\d+.\d+) LEN=(\d+) TOS=0x00 PREC=0x00 TTL=(\d+) ID=(\d+) DF PROTO=(\.+) SPT=(\d+) DPT=(\d+) WINDOW=(\d+) RES=0x0$ SYN URGP=(\d+) MARK=0x10</regex>
<order>status,connection,source,destination,packet_length,ttl,id,protocol,source_port,destination_port,window_field,urgent_pointer</order>
</decoder>
any help and suggestion would be really helpful. Thanks in advance.