filter f_nas81_suricata { match("suricata" value("PROGRAM")); }; filter f_nas81_host { match("nas81" value("HOST")); }; filter f_nas81_suricata_stats { match("stats" value("MESSAGE")); }; parser p_suricata_stats_json { json-parser(prefix(".suricata.stats.")); }; parser p_suricata_stats_stats { json-parser( "${MESSAGE}" ); }; destination d_nas81_suricata { elasticsearch-http( index("nas81-suricata") type("") url("http://pi501.in.thelinuxpro.net:9200/_bulk") template("$(format-json --scope rfc5424 --scope dot-nv-pairs --rekey .* --shift 1 --scope nv-pairs --exclude DATE @timestamp=${ISODATE})") persist-name("d_nas81_suricata") ); }; destination d_nas81_suricata_stats { elasticsearch-http( index("nas81") type("") url("http://pi501.in.thelinuxpro.net:9200/_bulk") template(t_suricata_nas81_stats) template("$(format-json --scope rfc5424 --exclude DATE @timestamp=${ISODATE})") persist-name("d_nas81_suricata_stats") ); }; destination d_file_suricata { file("/var/log/suricata.log"); }; log { source(s_network_udp); filter(f_nas81_host); filter(f_suricata); filter(f_nas81_suricata_stats); parser(p_suricata_stats_stats); parser(p_suricata_stats_json); destination(d_nas81_suricata_stats); flags(final); }; log { source(s_network_udp); filter(f_nas81_host); filter(f_suricata); parser(p_suricata_json); parser(p_suricata_src_ip_geoip2_city); parser(p_suricata_dest_ip_geoip2_city); destination(d_nas81_suricata); flags(final); };