aboutsummaryrefslogtreecommitdiff
path: root/test/results/stats/default
diff options
context:
space:
mode:
Diffstat (limited to 'test/results/stats/default')
-rw-r--r--test/results/stats/default/1kxun.pcap.out3
-rw-r--r--test/results/stats/default/443-chrome.pcap.out1
-rw-r--r--test/results/stats/default/443-curl.pcap.out3
-rw-r--r--test/results/stats/default/443-firefox.pcap.out3
-rw-r--r--test/results/stats/default/443-git.pcap.out3
-rw-r--r--test/results/stats/default/443-opvn.pcap.out1
-rw-r--r--test/results/stats/default/443-safari.pcap.out3
-rw-r--r--test/results/stats/default/4in4tunnel.pcap.out1
-rw-r--r--test/results/stats/default/4in6tunnel.pcap.out1
-rw-r--r--test/results/stats/default/6in4tunnel.pcap.out1
-rw-r--r--test/results/stats/default/6in6tunnel.pcap.out1
-rw-r--r--test/results/stats/default/BGP_Cisco_hdlc_slarp.pcap.out1
-rw-r--r--test/results/stats/default/BGP_redist.pcap.out1
-rw-r--r--test/results/stats/default/EAQ.pcap.out1
-rw-r--r--test/results/stats/default/FAX-Call-t38-CA-TDM-SIP-FB-1.pcap.out1
-rw-r--r--test/results/stats/default/IEC104.pcap.out1
-rw-r--r--test/results/stats/default/KakaoTalk_chat.pcap.out3
-rw-r--r--test/results/stats/default/KakaoTalk_talk.pcap.out3
-rw-r--r--test/results/stats/default/NTPv2.pcap.out1
-rw-r--r--test/results/stats/default/NTPv3.pcap.out1
-rw-r--r--test/results/stats/default/NTPv4.pcap.out1
-rw-r--r--test/results/stats/default/Oscar.pcap.out1
-rw-r--r--test/results/stats/default/TivoDVR.pcap.out1
-rw-r--r--test/results/stats/default/WebattackRCE.pcap.out1
-rw-r--r--test/results/stats/default/WebattackSQLinj.pcap.out1
-rw-r--r--test/results/stats/default/WebattackXSS.pcap.out1
-rw-r--r--test/results/stats/default/activision.pcap.out1
-rw-r--r--test/results/stats/default/adult_content.pcap.out1
-rw-r--r--test/results/stats/default/afp.pcap.out1
-rw-r--r--test/results/stats/default/agora-sd-rtn.pcap.out1
-rw-r--r--test/results/stats/default/ah.pcapng.out1
-rw-r--r--test/results/stats/default/ajp.pcap.out1
-rw-r--r--test/results/stats/default/alexa-app.pcapng.out3
-rw-r--r--test/results/stats/default/alicloud.pcap.out1
-rw-r--r--test/results/stats/default/among_us.pcap.out1
-rw-r--r--test/results/stats/default/amqp.pcap.out1
-rw-r--r--test/results/stats/default/android.pcap.out3
-rw-r--r--test/results/stats/default/anyconnect-vpn.pcap.out11
-rw-r--r--test/results/stats/default/anydesk.pcapng.out3
-rw-r--r--test/results/stats/default/avast.pcap.out1
-rw-r--r--test/results/stats/default/avast_securedns.pcapng.out1
-rw-r--r--test/results/stats/default/bacnet.pcap.out1
-rw-r--r--test/results/stats/default/bad-dns-traffic.pcap.out1
-rw-r--r--test/results/stats/default/badpackets.pcap.out1
-rw-r--r--test/results/stats/default/beckhoff_ads.pcapng.out168
-rw-r--r--test/results/stats/default/bets.pcapng.out3
-rw-r--r--test/results/stats/default/bitcoin.pcap.out9
-rw-r--r--test/results/stats/default/bittorrent.pcap.out1
-rw-r--r--test/results/stats/default/bittorrent_tcp_miss.pcapng.out1
-rw-r--r--test/results/stats/default/bittorrent_utp.pcap.out39
-rw-r--r--test/results/stats/default/bjnp.pcap.out1
-rw-r--r--test/results/stats/default/bot.pcap.out1
-rw-r--r--test/results/stats/default/bt-dns.pcap.out1
-rw-r--r--test/results/stats/default/bt-http.pcapng.out1
-rw-r--r--test/results/stats/default/bt_search.pcap.out1
-rw-r--r--test/results/stats/default/cachefly.pcapng.out3
-rw-r--r--test/results/stats/default/can.pcap.out1
-rw-r--r--test/results/stats/default/capwap.pcap.out1
-rw-r--r--test/results/stats/default/capwap_data.pcapng.out1
-rw-r--r--test/results/stats/default/cassandra.pcap.out35
-rw-r--r--test/results/stats/default/ceph.pcap.out168
-rw-r--r--test/results/stats/default/check_mk_new.pcap.out1
-rw-r--r--test/results/stats/default/chrome.pcap.out3
-rw-r--r--test/results/stats/default/cip_io.pcap.out168
-rw-r--r--test/results/stats/default/citrix.pcap.out1
-rw-r--r--test/results/stats/default/cloudflare-warp.pcap.out3
-rw-r--r--test/results/stats/default/coap_mqtt.pcap.out1
-rw-r--r--test/results/stats/default/collectd.pcap.out1
-rw-r--r--test/results/stats/default/corba.pcap.out35
-rw-r--r--test/results/stats/default/cpha.pcap.out1
-rw-r--r--test/results/stats/default/crawler_false_positive.pcapng.out1
-rw-r--r--test/results/stats/default/crynet.pcap.out1
-rw-r--r--test/results/stats/default/custom_categories.pcapng.out1
-rw-r--r--test/results/stats/default/custom_risk_mask.pcapng.out1
-rw-r--r--test/results/stats/default/custom_rules_ipv6.pcapng.out23
-rw-r--r--test/results/stats/default/custom_rules_same-ip_multiple_ports.pcapng.out1
-rw-r--r--test/results/stats/default/dazn.pcapng.out3
-rw-r--r--test/results/stats/default/dcerpc.pcap.out13
-rw-r--r--test/results/stats/default/dhcp-fuzz.pcapng.out1
-rw-r--r--test/results/stats/default/diameter.pcap.out1
-rw-r--r--test/results/stats/default/discord.pcap.out3
-rw-r--r--test/results/stats/default/discord_mid_flow.pcap.out1
-rw-r--r--test/results/stats/default/dlms.pcap.out168
-rw-r--r--test/results/stats/default/dlt_ppp.pcap.out1
-rw-r--r--test/results/stats/default/dnp3.pcap.out1
-rw-r--r--test/results/stats/default/dns-exf.pcap.out1
-rw-r--r--test/results/stats/default/dns-google-nsid.pcapng.out1
-rw-r--r--test/results/stats/default/dns-invalid-chars.pcap.out1
-rw-r--r--test/results/stats/default/dns-tunnel-iodine.pcap.out1
-rw-r--r--test/results/stats/default/dns.pcap.out168
-rw-r--r--test/results/stats/default/dns2tcp_tunnel.pcap.out3
-rw-r--r--test/results/stats/default/dns_ambiguous_names.pcap.out1
-rw-r--r--test/results/stats/default/dns_doh.pcap.out3
-rw-r--r--test/results/stats/default/dns_dot.pcap.out3
-rw-r--r--test/results/stats/default/dns_exfiltration.pcap.out1
-rw-r--r--test/results/stats/default/dns_fragmented.pcap.out1
-rw-r--r--test/results/stats/default/dns_invert_query.pcapng.out1
-rw-r--r--test/results/stats/default/dns_long_domainname.pcap.out1
-rw-r--r--test/results/stats/default/dnscrypt-v1-and-resolver-pings.pcap.out1
-rw-r--r--test/results/stats/default/dnscrypt-v2-doh.pcap.out3
-rw-r--r--test/results/stats/default/dnscrypt-v2.pcap.out1
-rw-r--r--test/results/stats/default/dnscrypt_skype_false_positive.pcapng.out1
-rw-r--r--test/results/stats/default/doh.pcapng.out3
-rw-r--r--test/results/stats/default/doq.pcapng.out3
-rw-r--r--test/results/stats/default/doq_adguard.pcapng.out3
-rw-r--r--test/results/stats/default/dos_win98_smb_netbeui.pcap.out1
-rw-r--r--test/results/stats/default/drda_db2.pcap.out1
-rw-r--r--test/results/stats/default/dropbox.pcap.out1
-rw-r--r--test/results/stats/default/dtls.pcap.out3
-rw-r--r--test/results/stats/default/dtls2.pcap.out3
-rw-r--r--test/results/stats/default/dtls_certificate.pcapng.out3
-rw-r--r--test/results/stats/default/dtls_certificate_fragments.pcap.out3
-rw-r--r--test/results/stats/default/dtls_mid_sessions.pcapng.out1
-rw-r--r--test/results/stats/default/dtls_old_version.pcapng.out1
-rw-r--r--test/results/stats/default/dtls_session_id_and_coockie_both.pcap.out3
-rw-r--r--test/results/stats/default/edonkey.pcap.out1
-rw-r--r--test/results/stats/default/elasticsearch.pcap.out1
-rw-r--r--test/results/stats/default/emotet.pcap.out15
-rw-r--r--test/results/stats/default/encrypted_sni.pcap.out3
-rw-r--r--test/results/stats/default/epicgames.pcapng.out1
-rw-r--r--test/results/stats/default/esp.pcapng.out1
-rw-r--r--test/results/stats/default/ethereum.pcap.out1
-rw-r--r--test/results/stats/default/ethernetIP.pcap.out1
-rw-r--r--test/results/stats/default/ethersbus.pcap.out168
-rw-r--r--test/results/stats/default/ethersio.pcap.out168
-rw-r--r--test/results/stats/default/exe_download.pcap.out13
-rw-r--r--test/results/stats/default/exe_download_as_png.pcap.out11
-rw-r--r--test/results/stats/default/facebook.pcap.out3
-rw-r--r--test/results/stats/default/fastcgi.pcap.out1
-rw-r--r--test/results/stats/default/fins.pcap.out168
-rw-r--r--test/results/stats/default/firefox.pcap.out3
-rw-r--r--test/results/stats/default/fix.pcap.out1
-rw-r--r--test/results/stats/default/fix2.pcap.out1
-rw-r--r--test/results/stats/default/forticlient.pcap.out3
-rw-r--r--test/results/stats/default/ftp-start-tls.pcap.out1
-rw-r--r--test/results/stats/default/ftp.pcap.out9
-rw-r--r--test/results/stats/default/ftp_failed.pcap.out1
-rw-r--r--test/results/stats/default/fuzz-2006-06-26-2594.pcap.out1
-rw-r--r--test/results/stats/default/fuzz-2006-09-29-28586.pcap.out1
-rw-r--r--test/results/stats/default/fuzz-2020-02-16-11740.pcap.out1
-rw-r--r--test/results/stats/default/fuzz-2021-06-07-c6c72a0a56.pcap.out1
-rw-r--r--test/results/stats/default/fuzz-2021-10-13.pcap.out1
-rw-r--r--test/results/stats/default/gearman.pcap.out168
-rw-r--r--test/results/stats/default/geforcenow.pcapng.out9
-rw-r--r--test/results/stats/default/genshin-impact.pcap.out1
-rw-r--r--test/results/stats/default/git.pcap.out1
-rw-r--r--test/results/stats/default/gnutella.pcap.out3
-rw-r--r--test/results/stats/default/google_chat.pcapng.out168
-rw-r--r--test/results/stats/default/google_meet.pcapng.out168
-rw-r--r--test/results/stats/default/google_ssl.pcap.out1
-rw-r--r--test/results/stats/default/googledns_android10.pcap.out3
-rw-r--r--test/results/stats/default/gquic.pcap.out1
-rw-r--r--test/results/stats/default/gquic_only_from_server.pcap.out168
-rw-r--r--test/results/stats/default/gtp_c.pcap.out1
-rw-r--r--test/results/stats/default/gtp_false_positive.pcapng.out1
-rw-r--r--test/results/stats/default/gtp_prime.pcapng.out1
-rw-r--r--test/results/stats/default/h323-overflow.pcap.out1
-rw-r--r--test/results/stats/default/h323.pcap.out3
-rw-r--r--test/results/stats/default/h323_tcp.pcap.out168
-rw-r--r--test/results/stats/default/haproxy.pcap.out1
-rw-r--r--test/results/stats/default/hart_ip.pcap.out168
-rw-r--r--test/results/stats/default/heuristic_tcp_ack_payload.pcap.out1
-rw-r--r--test/results/stats/default/hislip.pcap.out168
-rw-r--r--test/results/stats/default/hl7.pcap.out168
-rw-r--r--test/results/stats/default/hots.pcapng.out1
-rw-r--r--test/results/stats/default/hpvirtgrp.pcap.out1
-rw-r--r--test/results/stats/default/hsrp0.pcap.out1
-rw-r--r--test/results/stats/default/hsrp2.pcap.out1
-rw-r--r--test/results/stats/default/hsrp2_ipv6.pcapng.out1
-rw-r--r--test/results/stats/default/http-crash-content-disposition.pcap.out1
-rw-r--r--test/results/stats/default/http-lines-split.pcap.out1
-rw-r--r--test/results/stats/default/http-manipulated.pcap.out1
-rw-r--r--test/results/stats/default/http-proxy.pcapng.out1
-rw-r--r--test/results/stats/default/http.pcapng.out168
-rw-r--r--test/results/stats/default/http2.pcapng.out1
-rw-r--r--test/results/stats/default/http_asymmetric.pcapng.out3
-rw-r--r--test/results/stats/default/http_auth.pcap.out1
-rw-r--r--test/results/stats/default/http_connect.pcap.out3
-rw-r--r--test/results/stats/default/http_guessed_host_and_guessed.pcapng.out1
-rw-r--r--test/results/stats/default/http_invalid_server.pcap.out1
-rw-r--r--test/results/stats/default/http_ipv6.pcap.out3
-rw-r--r--test/results/stats/default/http_on_sip_port.pcap.out1
-rw-r--r--test/results/stats/default/http_origin_different_than_host.pcap.out1
-rw-r--r--test/results/stats/default/http_starting_with_reply.pcapng.out1
-rw-r--r--test/results/stats/default/http_ua_splitted_in_two_pkts.pcapng.out1
-rw-r--r--test/results/stats/default/i3d.pcap.out1
-rw-r--r--test/results/stats/default/iax.pcap.out1
-rw-r--r--test/results/stats/default/icmp-tunnel.pcap.out1
-rw-r--r--test/results/stats/default/iec60780-5-104.pcap.out1
-rw-r--r--test/results/stats/default/ieee_c37118.pcap.out168
-rw-r--r--test/results/stats/default/imap-starttls.pcap.out1
-rw-r--r--test/results/stats/default/imap.pcap.out1
-rw-r--r--test/results/stats/default/imaps.pcap.out1
-rw-r--r--test/results/stats/default/imo.pcap.out1
-rw-r--r--test/results/stats/default/instagram.pcap.out3
-rw-r--r--test/results/stats/default/ip_fragmented_garbage.pcap.out25
-rw-r--r--test/results/stats/default/iphone.pcap.out3
-rw-r--r--test/results/stats/default/ipp.pcap.out1
-rw-r--r--test/results/stats/default/ipsec_isakmp_esp.pcap.out7
-rw-r--r--test/results/stats/default/ipv6_in_gtp.pcap.out1
-rw-r--r--test/results/stats/default/irc.pcap.out1
-rw-r--r--test/results/stats/default/iso9506-1-mms.pcap.out168
-rw-r--r--test/results/stats/default/ja3_lots_of_cipher_suites.pcap.out1
-rw-r--r--test/results/stats/default/ja3_lots_of_cipher_suites_2_anon.pcap.out1
-rw-r--r--test/results/stats/default/jabber.pcap.out1
-rw-r--r--test/results/stats/default/jsonrpc.pcap.out168
-rw-r--r--test/results/stats/default/kafka.pcapng.out168
-rw-r--r--test/results/stats/default/kcp.pcap.out168
-rw-r--r--test/results/stats/default/kerberos-error.pcap.out1
-rw-r--r--test/results/stats/default/kerberos-login.pcap.out1
-rw-r--r--test/results/stats/default/kerberos.pcap.out1
-rw-r--r--test/results/stats/default/kerberos_fuzz.pcapng.out1
-rw-r--r--test/results/stats/default/kismet.pcap.out1
-rw-r--r--test/results/stats/default/kontiki.pcap.out1
-rw-r--r--test/results/stats/default/line.pcap.out3
-rw-r--r--test/results/stats/default/linecall_falsepositve.pcap.out1
-rw-r--r--test/results/stats/default/lisp_registration.pcap.out1
-rw-r--r--test/results/stats/default/log4j-webapp-exploit.pcap.out1
-rw-r--r--test/results/stats/default/long_tls_certificate.pcap.out3
-rw-r--r--test/results/stats/default/lru_ipv6_caches.pcapng.out15
-rw-r--r--test/results/stats/default/malformed_dns.pcap.out1
-rw-r--r--test/results/stats/default/malformed_icmp.pcap.out1
-rw-r--r--test/results/stats/default/malware.pcap.out7
-rw-r--r--test/results/stats/default/memcached.cap.out1
-rw-r--r--test/results/stats/default/merakicloud.pcapng.out1
-rw-r--r--test/results/stats/default/mgcp.pcap.out1
-rw-r--r--test/results/stats/default/mining.pcapng.out168
-rw-r--r--test/results/stats/default/modbus.pcap.out1
-rw-r--r--test/results/stats/default/monero.pcap.out45
-rw-r--r--test/results/stats/default/mongo_false_positive.pcapng.out1
-rw-r--r--test/results/stats/default/mongodb.pcap.out1
-rw-r--r--test/results/stats/default/mpeg-dash.pcap.out1
-rw-r--r--test/results/stats/default/mpeg.pcap.out1
-rw-r--r--test/results/stats/default/mpegts.pcap.out1
-rw-r--r--test/results/stats/default/mqtt.pcap.out1
-rw-r--r--test/results/stats/default/mssql_tds.pcap.out1
-rw-r--r--test/results/stats/default/mullvad_dns.pcap.out1
-rw-r--r--test/results/stats/default/mullvad_wireguard.pcap.out1
-rw-r--r--test/results/stats/default/mumble.pcapng.out168
-rw-r--r--test/results/stats/default/munin.pcap.out1
-rw-r--r--test/results/stats/default/mysql.pcapng.out (renamed from test/results/stats/default/mysql-8.pcap.out)15
-rw-r--r--test/results/stats/default/natpmp.pcap.out1
-rw-r--r--test/results/stats/default/nats.pcap.out1
-rw-r--r--test/results/stats/default/ndpi_match_string_subprotocol__error.pcapng.out1
-rw-r--r--test/results/stats/default/nest_log_sink.pcap.out1
-rw-r--r--test/results/stats/default/netbios.pcap.out1
-rw-r--r--test/results/stats/default/netbios_wildcard_dns_query.pcap.out1
-rw-r--r--test/results/stats/default/netflix.pcap.out3
-rw-r--r--test/results/stats/default/netflow-fritz.pcap.out1
-rw-r--r--test/results/stats/default/netflowv9.pcap.out1
-rw-r--r--test/results/stats/default/nfsv2.pcap.out1
-rw-r--r--test/results/stats/default/nfsv3.pcap.out1
-rw-r--r--test/results/stats/default/nintendo.pcap.out3
-rw-r--r--test/results/stats/default/nntp.pcap.out1
-rw-r--r--test/results/stats/default/no_sni.pcap.out3
-rw-r--r--test/results/stats/default/nomachine.pcapng.out168
-rw-r--r--test/results/stats/default/ocs.pcap.out3
-rw-r--r--test/results/stats/default/ocsp.pcapng.out1
-rw-r--r--test/results/stats/default/oicq.pcap.out1
-rw-r--r--test/results/stats/default/ookla.pcap.out3
-rw-r--r--test/results/stats/default/opc-ua.pcap.out168
-rw-r--r--test/results/stats/default/openflow.pcap.out168
-rw-r--r--test/results/stats/default/openvpn-tlscrypt.pcap.out (renamed from test/results/stats/default/steam.pcap.out)37
-rw-r--r--test/results/stats/default/openvpn.pcap.out49
-rw-r--r--test/results/stats/default/openvpn_nohmac.pcapng.out168
-rw-r--r--test/results/stats/default/openvpn_nohmac_tcp.pcapng.out168
-rw-r--r--test/results/stats/default/opera-vpn.pcapng.out3
-rw-r--r--test/results/stats/default/oracle12.pcapng.out1
-rw-r--r--test/results/stats/default/os_detected.pcapng.out3
-rw-r--r--test/results/stats/default/ospfv2_add_new_prefix.pcap.out1
-rw-r--r--test/results/stats/default/ossfuzz_seed_fake_traces_1.pcapng.out17
-rw-r--r--test/results/stats/default/ossfuzz_seed_fake_traces_2.pcapng.out39
-rw-r--r--test/results/stats/default/ossfuzz_seed_fake_traces_3.pcapng.out1
-rw-r--r--test/results/stats/default/ossfuzz_seed_fake_traces_4.pcapng.out1
-rw-r--r--test/results/stats/default/pgm.pcap.out1
-rw-r--r--test/results/stats/default/pgsql.pcap.out1
-rw-r--r--test/results/stats/default/pia.pcap.out168
-rw-r--r--test/results/stats/default/pim.pcap.out1
-rw-r--r--test/results/stats/default/pinterest.pcap.out3
-rw-r--r--test/results/stats/default/pluralsight.pcap.out3
-rw-r--r--test/results/stats/default/pop3.pcap.out1
-rw-r--r--test/results/stats/default/pop3_stls.pcap.out1
-rw-r--r--test/results/stats/default/pops.pcapng.out1
-rw-r--r--test/results/stats/default/pps.pcap.out7
-rw-r--r--test/results/stats/default/pptp.pcap.out1
-rw-r--r--test/results/stats/default/profinet-io-le.pcap.out168
-rw-r--r--test/results/stats/default/protobuf.pcap.out1
-rw-r--r--test/results/stats/default/protonvpn.pcap.out3
-rw-r--r--test/results/stats/default/psiphon3.pcap.out3
-rw-r--r--test/results/stats/default/ptpv2.pcap.out168
-rw-r--r--test/results/stats/default/punycode-idn.pcap.out1
-rw-r--r--test/results/stats/default/quic-23.pcap.out3
-rw-r--r--test/results/stats/default/quic-24.pcap.out3
-rw-r--r--test/results/stats/default/quic-27.pcap.out3
-rw-r--r--test/results/stats/default/quic-28.pcap.out3
-rw-r--r--test/results/stats/default/quic-29.pcap.out3
-rw-r--r--test/results/stats/default/quic-33.pcapng.out3
-rw-r--r--test/results/stats/default/quic-34.pcap.out3
-rw-r--r--test/results/stats/default/quic-forcing-vn-with-data.pcapng.out3
-rw-r--r--test/results/stats/default/quic-fuzz-overflow.pcapng.out1
-rw-r--r--test/results/stats/default/quic-mvfst-22.pcap.out3
-rw-r--r--test/results/stats/default/quic-mvfst-22_decryption_error.pcap.out1
-rw-r--r--test/results/stats/default/quic-mvfst-27.pcapng.out3
-rw-r--r--test/results/stats/default/quic-mvfst-exp.pcap.out3
-rw-r--r--test/results/stats/default/quic-v2.pcapng.out3
-rw-r--r--test/results/stats/default/quic.pcap.out1
-rw-r--r--test/results/stats/default/quic046.pcap.out1
-rw-r--r--test/results/stats/default/quic_0RTT.pcap.out3
-rw-r--r--test/results/stats/default/quic_cc_ack.pcapng.out1
-rw-r--r--test/results/stats/default/quic_crypto_aes_auth_size.pcap.out3
-rw-r--r--test/results/stats/default/quic_frags_ch_in_multiple_packets.pcapng.out3
-rw-r--r--test/results/stats/default/quic_frags_ch_out_of_order_same_packet_craziness.pcapng.out3
-rw-r--r--test/results/stats/default/quic_frags_different_dcid.pcapng.out168
-rw-r--r--test/results/stats/default/quic_interop_V.pcapng.out1
-rw-r--r--test/results/stats/default/quic_q39.pcap.out1
-rw-r--r--test/results/stats/default/quic_q43.pcap.out1
-rw-r--r--test/results/stats/default/quic_q46.pcap.out1
-rw-r--r--test/results/stats/default/quic_q46_b.pcap.out1
-rw-r--r--test/results/stats/default/quic_q50.pcap.out1
-rw-r--r--test/results/stats/default/quic_t50.pcap.out3
-rw-r--r--test/results/stats/default/quic_t51.pcap.out3
-rw-r--r--test/results/stats/default/quickplay.pcap.out1
-rw-r--r--test/results/stats/default/radius_false_positive.pcapng.out17
-rw-r--r--test/results/stats/default/radmin3.pcapng.out168
-rw-r--r--test/results/stats/default/raft.pcap.out168
-rw-r--r--test/results/stats/default/raknet.pcap.out1
-rw-r--r--test/results/stats/default/rdp.pcap.out1
-rw-r--r--test/results/stats/default/rdp2.pcap.out1
-rw-r--r--test/results/stats/default/rdp3.pcap.out168
-rw-r--r--test/results/stats/default/reasm_crash_anon.pcapng.out1
-rw-r--r--test/results/stats/default/reasm_segv_anon.pcapng.out1
-rw-r--r--test/results/stats/default/reddit.pcap.out3
-rw-r--r--test/results/stats/default/resp.pcap.out168
-rw-r--r--test/results/stats/default/riot.pcapng.out3
-rw-r--r--test/results/stats/default/riotgames.pcap.out1
-rw-r--r--test/results/stats/default/rmcp.pcap.out1
-rw-r--r--test/results/stats/default/roblox.pcapng.out3
-rw-r--r--test/results/stats/default/roughtime.pcap.out168
-rw-r--r--test/results/stats/default/rsh-syslog-false-positive.pcap.out1
-rw-r--r--test/results/stats/default/rsh.pcap.out1
-rw-r--r--test/results/stats/default/rsync.pcap.out1
-rw-r--r--test/results/stats/default/rtcp_multiple_pkts_in_the_same_datagram.pcap.out1
-rw-r--r--test/results/stats/default/rtmp.pcap.out1
-rw-r--r--test/results/stats/default/rtp.pcapng.out1
-rw-r--r--test/results/stats/default/rtps.pcap.out (renamed from test/results/stats/default/zcash.pcap.out)35
-rw-r--r--test/results/stats/default/rtsp.pcap.out1
-rw-r--r--test/results/stats/default/rtsp_setup_http.pcapng.out1
-rw-r--r--test/results/stats/default/rx.pcap.out1
-rw-r--r--test/results/stats/default/s7comm-plus.pcap.out168
-rw-r--r--test/results/stats/default/s7comm.pcap.out7
-rw-r--r--test/results/stats/default/safari.pcap.out3
-rw-r--r--test/results/stats/default/salesforce.pcap.out3
-rw-r--r--test/results/stats/default/sccp_hw_conf_register.pcapng.out1
-rw-r--r--test/results/stats/default/sctp.cap.out1
-rw-r--r--test/results/stats/default/selfsigned.pcap.out3
-rw-r--r--test/results/stats/default/sflow.pcap.out1
-rw-r--r--test/results/stats/default/shadowsocks.pcap.out1
-rw-r--r--test/results/stats/default/signal.pcap.out3
-rw-r--r--test/results/stats/default/simple-dnscrypt.pcap.out3
-rw-r--r--test/results/stats/default/sip.pcap.out1
-rw-r--r--test/results/stats/default/sip_hello.pcapng.out1
-rw-r--r--test/results/stats/default/sites.pcapng.out51
-rw-r--r--test/results/stats/default/skinny.pcap.out37
-rw-r--r--test/results/stats/default/skype-conference-call.pcap.out1
-rw-r--r--test/results/stats/default/skype.pcap.out11
-rw-r--r--test/results/stats/default/skype_no_unknown.pcap.out7
-rw-r--r--test/results/stats/default/skype_udp.pcap.out1
-rw-r--r--test/results/stats/default/smb_deletefile.pcap.out1
-rw-r--r--test/results/stats/default/smb_frags.pcap.out1
-rw-r--r--test/results/stats/default/smbv1.pcap.out1
-rw-r--r--test/results/stats/default/smpp_in_general.pcap.out1
-rw-r--r--test/results/stats/default/smtp-starttls.pcap.out1
-rw-r--r--test/results/stats/default/smtp.pcap.out1
-rw-r--r--test/results/stats/default/smtps.pcapng.out1
-rw-r--r--test/results/stats/default/snapchat.pcap.out3
-rw-r--r--test/results/stats/default/snapchat_call.pcapng.out1
-rw-r--r--test/results/stats/default/snapchat_call_v1.pcapng.out3
-rw-r--r--test/results/stats/default/snmp.pcap.out1
-rw-r--r--test/results/stats/default/soap.pcap.out1
-rw-r--r--test/results/stats/default/socks.pcap.out1
-rw-r--r--test/results/stats/default/softether.pcap.out1
-rw-r--r--test/results/stats/default/someip-tp.pcap.out1
-rw-r--r--test/results/stats/default/someip-udp-method-call.pcapng.out1
-rw-r--r--test/results/stats/default/someip_sd_sample.pcap.out1
-rw-r--r--test/results/stats/default/source_engine.pcap.out1
-rw-r--r--test/results/stats/default/spotify_tcp.pcap.out168
-rw-r--r--test/results/stats/default/sql_injection.pcap.out1
-rw-r--r--test/results/stats/default/srvloc-v1.pcapng.out1
-rw-r--r--test/results/stats/default/srvloc.pcap.out1
-rw-r--r--test/results/stats/default/ssdp-m-search-ua.pcap.out1
-rw-r--r--test/results/stats/default/ssdp-m-search.pcap.out1
-rw-r--r--test/results/stats/default/ssh.pcap.out1
-rw-r--r--test/results/stats/default/ssl-cert-name-mismatch.pcap.out3
-rw-r--r--test/results/stats/default/starcraft_battle.pcap.out1
-rw-r--r--test/results/stats/default/steam.pcapng.out168
-rw-r--r--test/results/stats/default/stomp.pcapng.out168
-rw-r--r--test/results/stats/default/stun.pcap.out47
-rw-r--r--test/results/stats/default/stun_classic.pcap.out1
-rw-r--r--test/results/stats/default/stun_dtls_rtp.pcapng.out168
-rw-r--r--test/results/stats/default/stun_dtls_rtp_unidir.pcapng.out168
-rw-r--r--test/results/stats/default/stun_dtls_unidirectional_client.pcap.out17
-rw-r--r--test/results/stats/default/stun_dtls_unidirectional_server.pcap.out17
-rw-r--r--test/results/stats/default/stun_google_meet.pcapng.out43
-rw-r--r--test/results/stats/default/stun_msteams_unidir.pcapng.out1
-rw-r--r--test/results/stats/default/stun_signal.pcapng.out1
-rw-r--r--test/results/stats/default/stun_tcp_multiple_msgs_same_pkt.pcap.out1
-rw-r--r--test/results/stats/default/stun_wa_call.pcapng.out1
-rw-r--r--test/results/stats/default/stun_zoom.pcapng.out11
-rw-r--r--test/results/stats/default/syncthing.pcap.out1
-rw-r--r--test/results/stats/default/synscan.pcap.out11
-rw-r--r--test/results/stats/default/syslog.pcap.out1
-rw-r--r--test/results/stats/default/tailscale.pcap.out1
-rw-r--r--test/results/stats/default/targusdataspeed_false_positives.pcap.out1
-rw-r--r--test/results/stats/default/tcp_scan.pcapng.out1
-rw-r--r--test/results/stats/default/teams.pcap.out3
-rw-r--r--test/results/stats/default/teamspeak3.pcap.out1
-rw-r--r--test/results/stats/default/teamviewer.pcap.out1
-rw-r--r--test/results/stats/default/telegram.pcap.out23
-rw-r--r--test/results/stats/default/telegram_videocall.pcapng.out1
-rw-r--r--test/results/stats/default/telnet.pcap.out1
-rw-r--r--test/results/stats/default/teredo.pcap.out1
-rw-r--r--test/results/stats/default/tftp.pcap.out37
-rw-r--r--test/results/stats/default/threema.pcap.out1
-rw-r--r--test/results/stats/default/thrift.pcap.out1
-rw-r--r--test/results/stats/default/tinc.pcap.out1
-rw-r--r--test/results/stats/default/tk.pcap.out1
-rw-r--r--test/results/stats/default/tls-appdata.pcap.out1
-rw-r--r--test/results/stats/default/tls-esni-fuzzed.pcap.out3
-rw-r--r--test/results/stats/default/tls-rdn-extract.pcap.out3
-rw-r--r--test/results/stats/default/tls_2_reasms.pcapng.out3
-rw-r--r--test/results/stats/default/tls_2_reasms_b.pcapng.out3
-rw-r--r--test/results/stats/default/tls_alert.pcap.out3
-rw-r--r--test/results/stats/default/tls_certificate_too_long.pcap.out7
-rw-r--r--test/results/stats/default/tls_cipher_lens.pcap.out3
-rw-r--r--test/results/stats/default/tls_client_certificate_with_missing_server_one.pcapng.out3
-rw-r--r--test/results/stats/default/tls_ech.pcapng.out3
-rw-r--r--test/results/stats/default/tls_esni_sni_both.pcap.out3
-rw-r--r--test/results/stats/default/tls_false_positives.pcapng.out1
-rw-r--r--test/results/stats/default/tls_invalid_reads.pcap.out3
-rw-r--r--test/results/stats/default/tls_long_cert.pcap.out3
-rw-r--r--test/results/stats/default/tls_malicious_sha1.pcapng.out168
-rw-r--r--test/results/stats/default/tls_missing_ch_frag.pcap.out3
-rw-r--r--test/results/stats/default/tls_multiple_synack_different_seq.pcapng.out3
-rw-r--r--test/results/stats/default/tls_port_80.pcapng.out3
-rw-r--r--test/results/stats/default/tls_torrent.pcapng.out3
-rw-r--r--test/results/stats/default/tls_unidirectional.pcap.out3
-rw-r--r--test/results/stats/default/tls_verylong_certificate.pcap.out3
-rw-r--r--test/results/stats/default/toca-boca.pcap.out1
-rw-r--r--test/results/stats/default/tor.pcap.out7
-rw-r--r--test/results/stats/default/tplink_shp.pcap.out1
-rw-r--r--test/results/stats/default/trickbot.pcap.out1
-rw-r--r--test/results/stats/default/tumblr.pcap.out3
-rw-r--r--test/results/stats/default/tunnelbear.pcap.out3
-rw-r--r--test/results/stats/default/tuya_lp.pcap.out1
-rw-r--r--test/results/stats/default/ubntac2.pcap.out1
-rw-r--r--test/results/stats/default/uftp_v4_v5.pcap.out168
-rw-r--r--test/results/stats/default/ultrasurf.pcap.out3
-rw-r--r--test/results/stats/default/umas.pcap.out168
-rw-r--r--test/results/stats/default/upnp.pcap.out1
-rw-r--r--test/results/stats/default/viber.pcap.out3
-rw-r--r--test/results/stats/default/vk.pcapng.out3
-rw-r--r--test/results/stats/default/vnc.pcap.out1
-rw-r--r--test/results/stats/default/vrrp3.pcapng.out1
-rw-r--r--test/results/stats/default/vxlan.pcap.out1
-rw-r--r--test/results/stats/default/wa_video.pcap.out1
-rw-r--r--test/results/stats/default/wa_voice.pcap.out3
-rw-r--r--test/results/stats/default/waze.pcap.out3
-rw-r--r--test/results/stats/default/webdav.pcap.out168
-rw-r--r--test/results/stats/default/webex.pcap.out3
-rw-r--r--test/results/stats/default/websocket.pcap.out1
-rw-r--r--test/results/stats/default/wechat.pcap.out3
-rw-r--r--test/results/stats/default/weibo.pcap.out3
-rw-r--r--test/results/stats/default/whatsapp.pcap.out1
-rw-r--r--test/results/stats/default/whatsapp_login_call.pcap.out3
-rw-r--r--test/results/stats/default/whatsapp_login_chat.pcap.out1
-rw-r--r--test/results/stats/default/whatsapp_voice_and_message.pcap.out1
-rw-r--r--test/results/stats/default/whatsappfiles.pcap.out3
-rw-r--r--test/results/stats/default/whois.pcapng.out3
-rw-r--r--test/results/stats/default/windowsupdate_over_http.pcap.out1
-rw-r--r--test/results/stats/default/wireguard.pcap.out1
-rw-r--r--test/results/stats/default/wow.pcap.out1
-rw-r--r--test/results/stats/default/xdmcp.pcap.out1
-rw-r--r--test/results/stats/default/xiaomi.pcap.out1
-rw-r--r--test/results/stats/default/xss.pcap.out1
-rw-r--r--test/results/stats/default/yandex.pcapng.out9
-rw-r--r--test/results/stats/default/yojimbo.pcap.out (renamed from test/results/stats/default/steam_datagram_relay_ping.pcapng.out)9
-rw-r--r--test/results/stats/default/youtube_quic.pcap.out1
-rw-r--r--test/results/stats/default/youtubeupload.pcap.out3
-rw-r--r--test/results/stats/default/z3950.pcapng.out1
-rw-r--r--test/results/stats/default/zabbix.pcap.out1
-rw-r--r--test/results/stats/default/zattoo.pcap.out3
-rw-r--r--test/results/stats/default/zoom.pcap.out11
-rw-r--r--test/results/stats/default/zoom2.pcap.out39
-rw-r--r--test/results/stats/default/zoom_p2p.pcapng.out1
494 files changed, 9072 insertions, 562 deletions
diff --git a/test/results/stats/default/1kxun.pcap.out b/test/results/stats/default/1kxun.pcap.out
index 96a793372..99aec03ba 100644
--- a/test/results/stats/default/1kxun.pcap.out
+++ b/test/results/stats/default/1kxun.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:1303
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:1542432
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:1542792
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:197
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:188
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:177
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:34
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:5
diff --git a/test/results/stats/default/443-chrome.pcap.out b/test/results/stats/default/443-chrome.pcap.out
index 14b591675..457167b5e 100644
--- a/test/results/stats/default/443-chrome.pcap.out
+++ b/test/results/stats/default/443-chrome.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/443-curl.pcap.out b/test/results/stats/default/443-curl.pcap.out
index c48ae2691..8f8af6064 100644
--- a/test/results/stats/default/443-curl.pcap.out
+++ b/test/results/stats/default/443-curl.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:14
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13054
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13189
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/443-firefox.pcap.out b/test/results/stats/default/443-firefox.pcap.out
index 8a8605164..947de551c 100644
--- a/test/results/stats/default/443-firefox.pcap.out
+++ b/test/results/stats/default/443-firefox.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:14
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13302
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13437
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/443-git.pcap.out b/test/results/stats/default/443-git.pcap.out
index bb756c507..87cd5df48 100644
--- a/test/results/stats/default/443-git.pcap.out
+++ b/test/results/stats/default/443-git.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:14
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15107
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15242
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/443-opvn.pcap.out b/test/results/stats/default/443-opvn.pcap.out
index 2d9d1eecb..510db3e8b 100644
--- a/test/results/stats/default/443-opvn.pcap.out
+++ b/test/results/stats/default/443-opvn.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/443-safari.pcap.out b/test/results/stats/default/443-safari.pcap.out
index de169abfa..96793597c 100644
--- a/test/results/stats/default/443-safari.pcap.out
+++ b/test/results/stats/default/443-safari.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:14
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12813
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12948
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/4in4tunnel.pcap.out b/test/results/stats/default/4in4tunnel.pcap.out
index 3197756e2..fde2bfa19 100644
--- a/test/results/stats/default/4in4tunnel.pcap.out
+++ b/test/results/stats/default/4in4tunnel.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/4in6tunnel.pcap.out b/test/results/stats/default/4in6tunnel.pcap.out
index 6a6a99a3d..e2ade6fa4 100644
--- a/test/results/stats/default/4in6tunnel.pcap.out
+++ b/test/results/stats/default/4in6tunnel.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/6in4tunnel.pcap.out b/test/results/stats/default/6in4tunnel.pcap.out
index f7b0e293f..2faf22a69 100644
--- a/test/results/stats/default/6in4tunnel.pcap.out
+++ b/test/results/stats/default/6in4tunnel.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/6in6tunnel.pcap.out b/test/results/stats/default/6in6tunnel.pcap.out
index 2f4370a0e..2cd42b5c3 100644
--- a/test/results/stats/default/6in6tunnel.pcap.out
+++ b/test/results/stats/default/6in6tunnel.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/BGP_Cisco_hdlc_slarp.pcap.out b/test/results/stats/default/BGP_Cisco_hdlc_slarp.pcap.out
index 5fc9990ac..35fc6a43d 100644
--- a/test/results/stats/default/BGP_Cisco_hdlc_slarp.pcap.out
+++ b/test/results/stats/default/BGP_Cisco_hdlc_slarp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/BGP_redist.pcap.out b/test/results/stats/default/BGP_redist.pcap.out
index edb4e6ea1..bcbf23d7b 100644
--- a/test/results/stats/default/BGP_redist.pcap.out
+++ b/test/results/stats/default/BGP_redist.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/EAQ.pcap.out b/test/results/stats/default/EAQ.pcap.out
index 0e60affdf..2fc2c02f3 100644
--- a/test/results/stats/default/EAQ.pcap.out
+++ b/test/results/stats/default/EAQ.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:31
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:21
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/FAX-Call-t38-CA-TDM-SIP-FB-1.pcap.out b/test/results/stats/default/FAX-Call-t38-CA-TDM-SIP-FB-1.pcap.out
index 8684691e1..380687bf3 100644
--- a/test/results/stats/default/FAX-Call-t38-CA-TDM-SIP-FB-1.pcap.out
+++ b/test/results/stats/default/FAX-Call-t38-CA-TDM-SIP-FB-1.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/IEC104.pcap.out b/test/results/stats/default/IEC104.pcap.out
index f37dd1147..2ffdfbd96 100644
--- a/test/results/stats/default/IEC104.pcap.out
+++ b/test/results/stats/default/IEC104.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/KakaoTalk_chat.pcap.out b/test/results/stats/default/KakaoTalk_chat.pcap.out
index 9180d5f71..ec19f64f3 100644
--- a/test/results/stats/default/KakaoTalk_chat.pcap.out
+++ b/test/results/stats/default/KakaoTalk_chat.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:270
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:237305
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:238295
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:38
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:30
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:33
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
diff --git a/test/results/stats/default/KakaoTalk_talk.pcap.out b/test/results/stats/default/KakaoTalk_talk.pcap.out
index b20b6010c..592dccd4c 100644
--- a/test/results/stats/default/KakaoTalk_talk.pcap.out
+++ b/test/results/stats/default/KakaoTalk_talk.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:144
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:119885
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:120155
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:20
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:14
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:11
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:6
diff --git a/test/results/stats/default/NTPv2.pcap.out b/test/results/stats/default/NTPv2.pcap.out
index 1024f68bf..7c87ba561 100644
--- a/test/results/stats/default/NTPv2.pcap.out
+++ b/test/results/stats/default/NTPv2.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/NTPv3.pcap.out b/test/results/stats/default/NTPv3.pcap.out
index 08638bb21..4ce705b4a 100644
--- a/test/results/stats/default/NTPv3.pcap.out
+++ b/test/results/stats/default/NTPv3.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/NTPv4.pcap.out b/test/results/stats/default/NTPv4.pcap.out
index 08638bb21..4ce705b4a 100644
--- a/test/results/stats/default/NTPv4.pcap.out
+++ b/test/results/stats/default/NTPv4.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/Oscar.pcap.out b/test/results/stats/default/Oscar.pcap.out
index 83db24e9a..c4351199e 100644
--- a/test/results/stats/default/Oscar.pcap.out
+++ b/test/results/stats/default/Oscar.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/TivoDVR.pcap.out b/test/results/stats/default/TivoDVR.pcap.out
index 2bc9356d7..520721311 100644
--- a/test/results/stats/default/TivoDVR.pcap.out
+++ b/test/results/stats/default/TivoDVR.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/WebattackRCE.pcap.out b/test/results/stats/default/WebattackRCE.pcap.out
index 948dc35c8..b9aed7d3b 100644
--- a/test/results/stats/default/WebattackRCE.pcap.out
+++ b/test/results/stats/default/WebattackRCE.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:797
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:778
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:797
diff --git a/test/results/stats/default/WebattackSQLinj.pcap.out b/test/results/stats/default/WebattackSQLinj.pcap.out
index c1de7c2cc..5c8b61507 100644
--- a/test/results/stats/default/WebattackSQLinj.pcap.out
+++ b/test/results/stats/default/WebattackSQLinj.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/WebattackXSS.pcap.out b/test/results/stats/default/WebattackXSS.pcap.out
index 683792a0f..1b4f11501 100644
--- a/test/results/stats/default/WebattackXSS.pcap.out
+++ b/test/results/stats/default/WebattackXSS.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:22
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:22
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/activision.pcap.out b/test/results/stats/default/activision.pcap.out
index e93d9701d..acc080ab3 100644
--- a/test/results/stats/default/activision.pcap.out
+++ b/test/results/stats/default/activision.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/adult_content.pcap.out b/test/results/stats/default/adult_content.pcap.out
index 9a531c8ec..69aea7da0 100644
--- a/test/results/stats/default/adult_content.pcap.out
+++ b/test/results/stats/default/adult_content.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/afp.pcap.out b/test/results/stats/default/afp.pcap.out
index da92eb9f0..114715511 100644
--- a/test/results/stats/default/afp.pcap.out
+++ b/test/results/stats/default/afp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/agora-sd-rtn.pcap.out b/test/results/stats/default/agora-sd-rtn.pcap.out
index 5d1b5af37..24e9da092 100644
--- a/test/results/stats/default/agora-sd-rtn.pcap.out
+++ b/test/results/stats/default/agora-sd-rtn.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:26
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ah.pcapng.out b/test/results/stats/default/ah.pcapng.out
index 62c4a8b68..46140996b 100644
--- a/test/results/stats/default/ah.pcapng.out
+++ b/test/results/stats/default/ah.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ajp.pcap.out b/test/results/stats/default/ajp.pcap.out
index 2dc2e1da4..12d7221eb 100644
--- a/test/results/stats/default/ajp.pcap.out
+++ b/test/results/stats/default/ajp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/alexa-app.pcapng.out b/test/results/stats/default/alexa-app.pcapng.out
index bfc6a6f66..afaa13a6e 100644
--- a/test/results/stats/default/alexa-app.pcapng.out
+++ b/test/results/stats/default/alexa-app.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:1415
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:1259545
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:1268455
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:160
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:104
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:56
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:146
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:25
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:5
diff --git a/test/results/stats/default/alicloud.pcap.out b/test/results/stats/default/alicloud.pcap.out
index 62be6829b..67e176bb3 100644
--- a/test/results/stats/default/alicloud.pcap.out
+++ b/test/results/stats/default/alicloud.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:15
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/among_us.pcap.out b/test/results/stats/default/among_us.pcap.out
index dadafb3b7..33230ac0d 100644
--- a/test/results/stats/default/among_us.pcap.out
+++ b/test/results/stats/default/among_us.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/amqp.pcap.out b/test/results/stats/default/amqp.pcap.out
index a89f16fcd..8db3d2347 100644
--- a/test/results/stats/default/amqp.pcap.out
+++ b/test/results/stats/default/amqp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/android.pcap.out b/test/results/stats/default/android.pcap.out
index e0faea947..be957a233 100644
--- a/test/results/stats/default/android.pcap.out
+++ b/test/results/stats/default/android.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:437
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:372630
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:374403
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:63
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:54
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:60
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:13
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/anyconnect-vpn.pcap.out b/test/results/stats/default/anyconnect-vpn.pcap.out
index b1885a096..09ca1b42f 100644
--- a/test/results/stats/default/anyconnect-vpn.pcap.out
+++ b/test/results/stats/default/anyconnect-vpn.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:457
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:385288
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:385165
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:69
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:59
@@ -11,7 +11,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:38688
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:56727
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:18
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:17
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:207
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
@@ -92,10 +92,11 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:61
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:13
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:14
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
@@ -134,7 +135,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:11
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
@@ -152,7 +153,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
diff --git a/test/results/stats/default/anydesk.pcapng.out b/test/results/stats/default/anydesk.pcapng.out
index d3a411964..24fc13b32 100644
--- a/test/results/stats/default/anydesk.pcapng.out
+++ b/test/results/stats/default/anydesk.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:66
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:64887
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:65337
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:6
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:13
diff --git a/test/results/stats/default/avast.pcap.out b/test/results/stats/default/avast.pcap.out
index 5803106bd..583c8579a 100644
--- a/test/results/stats/default/avast.pcap.out
+++ b/test/results/stats/default/avast.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/avast_securedns.pcapng.out b/test/results/stats/default/avast_securedns.pcapng.out
index e1f6060ae..ee700e757 100644
--- a/test/results/stats/default/avast_securedns.pcapng.out
+++ b/test/results/stats/default/avast_securedns.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:39
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/bacnet.pcap.out b/test/results/stats/default/bacnet.pcap.out
index 13ddf5384..5e1d45eaf 100644
--- a/test/results/stats/default/bacnet.pcap.out
+++ b/test/results/stats/default/bacnet.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/bad-dns-traffic.pcap.out b/test/results/stats/default/bad-dns-traffic.pcap.out
index 9270b68ed..d13fde05c 100644
--- a/test/results/stats/default/bad-dns-traffic.pcap.out
+++ b/test/results/stats/default/bad-dns-traffic.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/badpackets.pcap.out b/test/results/stats/default/badpackets.pcap.out
index 64a9edee1..d84b96dc4 100644
--- a/test/results/stats/default/badpackets.pcap.out
+++ b/test/results/stats/default/badpackets.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/beckhoff_ads.pcapng.out b/test/results/stats/default/beckhoff_ads.pcapng.out
new file mode 100644
index 000000000..bc383e00e
--- /dev/null
+++ b/test/results/stats/default/beckhoff_ads.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9673
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:1376
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:1934
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/bets.pcapng.out b/test/results/stats/default/bets.pcapng.out
index 9a66dda99..5404a2557 100644
--- a/test/results/stats/default/bets.pcapng.out
+++ b/test/results/stats/default/bets.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:11297
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:11387
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/bitcoin.pcap.out b/test/results/stats/default/bitcoin.pcap.out
index ceb7b30db..7b9ede050 100644
--- a/test/results/stats/default/bitcoin.pcap.out
+++ b/test/results/stats/default/bitcoin.pcap.out
@@ -1,16 +1,16 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:58
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:52219
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:57
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:49964
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:112000
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:427032
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:279630
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:30
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/bittorrent.pcap.out b/test/results/stats/default/bittorrent.pcap.out
index b76b39e00..70239126b 100644
--- a/test/results/stats/default/bittorrent.pcap.out
+++ b/test/results/stats/default/bittorrent.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:24
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:22
diff --git a/test/results/stats/default/bittorrent_tcp_miss.pcapng.out b/test/results/stats/default/bittorrent_tcp_miss.pcapng.out
index 39d39df19..3fbd28353 100644
--- a/test/results/stats/default/bittorrent_tcp_miss.pcapng.out
+++ b/test/results/stats/default/bittorrent_tcp_miss.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/bittorrent_utp.pcap.out b/test/results/stats/default/bittorrent_utp.pcap.out
index 898fbfe58..edb821dbc 100644
--- a/test/results/stats/default/bittorrent_utp.pcap.out
+++ b/test/results/stats/default/bittorrent_utp.pcap.out
@@ -1,23 +1,23 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:14
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12943
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:23
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:19381
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:34679
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:3198
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:34748
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:3258
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
@@ -36,7 +36,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
@@ -51,7 +51,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
@@ -88,35 +88,36 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
diff --git a/test/results/stats/default/bjnp.pcap.out b/test/results/stats/default/bjnp.pcap.out
index 215ac4e6b..7c0f2d471 100644
--- a/test/results/stats/default/bjnp.pcap.out
+++ b/test/results/stats/default/bjnp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/bot.pcap.out b/test/results/stats/default/bot.pcap.out
index af8d2f496..0af1634fa 100644
--- a/test/results/stats/default/bot.pcap.out
+++ b/test/results/stats/default/bot.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/bt-dns.pcap.out b/test/results/stats/default/bt-dns.pcap.out
index dc0917f91..2f9dbdd9f 100644
--- a/test/results/stats/default/bt-dns.pcap.out
+++ b/test/results/stats/default/bt-dns.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/bt-http.pcapng.out b/test/results/stats/default/bt-http.pcapng.out
index 9e80b9908..43d45e733 100644
--- a/test/results/stats/default/bt-http.pcapng.out
+++ b/test/results/stats/default/bt-http.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/bt_search.pcap.out b/test/results/stats/default/bt_search.pcap.out
index 075b9d4ad..47a25d1ce 100644
--- a/test/results/stats/default/bt_search.pcap.out
+++ b/test/results/stats/default/bt_search.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/cachefly.pcapng.out b/test/results/stats/default/cachefly.pcapng.out
index dc4d06481..4429dd8d0 100644
--- a/test/results/stats/default/cachefly.pcapng.out
+++ b/test/results/stats/default/cachefly.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:17729
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:17864
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/can.pcap.out b/test/results/stats/default/can.pcap.out
index 37593e882..5d043ecac 100644
--- a/test/results/stats/default/can.pcap.out
+++ b/test/results/stats/default/can.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/capwap.pcap.out b/test/results/stats/default/capwap.pcap.out
index d6bdbc297..dff631f79 100644
--- a/test/results/stats/default/capwap.pcap.out
+++ b/test/results/stats/default/capwap.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/capwap_data.pcapng.out b/test/results/stats/default/capwap_data.pcapng.out
index 1f7fc190f..39ebb7063 100644
--- a/test/results/stats/default/capwap_data.pcapng.out
+++ b/test/results/stats/default/capwap_data.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/cassandra.pcap.out b/test/results/stats/default/cassandra.pcap.out
index d02651f1c..8b478a714 100644
--- a/test/results/stats/default/cassandra.pcap.out
+++ b/test/results/stats/default/cassandra.pcap.out
@@ -1,19 +1,19 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:21
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:17294
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:2
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:26
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:17836
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:9735
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:97373
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:160
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:172
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:14
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
@@ -36,7 +36,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
@@ -55,7 +55,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
@@ -88,10 +88,11 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
@@ -100,16 +101,16 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:2
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
diff --git a/test/results/stats/default/ceph.pcap.out b/test/results/stats/default/ceph.pcap.out
new file mode 100644
index 000000000..8917c39ad
--- /dev/null
+++ b/test/results/stats/default/ceph.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9415
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:1151
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:9638
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/check_mk_new.pcap.out b/test/results/stats/default/check_mk_new.pcap.out
index 9bda5c1a3..8ffd6d531 100644
--- a/test/results/stats/default/check_mk_new.pcap.out
+++ b/test/results/stats/default/check_mk_new.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/chrome.pcap.out b/test/results/stats/default/chrome.pcap.out
index ffd1a3499..6a79704dd 100644
--- a/test/results/stats/default/chrome.pcap.out
+++ b/test/results/stats/default/chrome.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:57
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:48187
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:48727
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:6
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/cip_io.pcap.out b/test/results/stats/default/cip_io.pcap.out
new file mode 100644
index 000000000..beb8ce01d
--- /dev/null
+++ b/test/results/stats/default/cip_io.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:6819
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:60
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:68
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/citrix.pcap.out b/test/results/stats/default/citrix.pcap.out
index 8fb9761b8..1e70f5cd5 100644
--- a/test/results/stats/default/citrix.pcap.out
+++ b/test/results/stats/default/citrix.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/cloudflare-warp.pcap.out b/test/results/stats/default/cloudflare-warp.pcap.out
index a7edbaf37..e3b0ebdc8 100644
--- a/test/results/stats/default/cloudflare-warp.pcap.out
+++ b/test/results/stats/default/cloudflare-warp.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:63
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:48442
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:48757
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:6
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/coap_mqtt.pcap.out b/test/results/stats/default/coap_mqtt.pcap.out
index 63894a750..604b94cdd 100644
--- a/test/results/stats/default/coap_mqtt.pcap.out
+++ b/test/results/stats/default/coap_mqtt.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:16
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
diff --git a/test/results/stats/default/collectd.pcap.out b/test/results/stats/default/collectd.pcap.out
index ec281ce10..89725a205 100644
--- a/test/results/stats/default/collectd.pcap.out
+++ b/test/results/stats/default/collectd.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/corba.pcap.out b/test/results/stats/default/corba.pcap.out
index 04ca01d0c..6e7c0d331 100644
--- a/test/results/stats/default/corba.pcap.out
+++ b/test/results/stats/default/corba.pcap.out
@@ -1,19 +1,19 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:27
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:20639
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:3
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:19
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14635
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:1154
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:1243
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:20910
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:4122
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:15
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
@@ -36,7 +36,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
@@ -60,7 +60,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interva
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
@@ -88,10 +88,11 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
@@ -100,16 +101,16 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:3
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:3
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
diff --git a/test/results/stats/default/cpha.pcap.out b/test/results/stats/default/cpha.pcap.out
index 0d47453f2..bcfdf9900 100644
--- a/test/results/stats/default/cpha.pcap.out
+++ b/test/results/stats/default/cpha.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/crawler_false_positive.pcapng.out b/test/results/stats/default/crawler_false_positive.pcapng.out
index 8b0e00756..a4dc1b58d 100644
--- a/test/results/stats/default/crawler_false_positive.pcapng.out
+++ b/test/results/stats/default/crawler_false_positive.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/crynet.pcap.out b/test/results/stats/default/crynet.pcap.out
index 2b3b105ae..8858a2083 100644
--- a/test/results/stats/default/crynet.pcap.out
+++ b/test/results/stats/default/crynet.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/custom_categories.pcapng.out b/test/results/stats/default/custom_categories.pcapng.out
index ff60d679d..615614840 100644
--- a/test/results/stats/default/custom_categories.pcapng.out
+++ b/test/results/stats/default/custom_categories.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
diff --git a/test/results/stats/default/custom_risk_mask.pcapng.out b/test/results/stats/default/custom_risk_mask.pcapng.out
index ab7445ddd..f3296e81f 100644
--- a/test/results/stats/default/custom_risk_mask.pcapng.out
+++ b/test/results/stats/default/custom_risk_mask.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/custom_rules_ipv6.pcapng.out b/test/results/stats/default/custom_rules_ipv6.pcapng.out
index 1637224ef..1df450bba 100644
--- a/test/results/stats/default/custom_rules_ipv6.pcapng.out
+++ b/test/results/stats/default/custom_rules_ipv6.pcapng.out
@@ -1,19 +1,19 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:26
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:24554
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:34
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:31395
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:3
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:2990
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:3502
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:448
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
@@ -101,17 +102,17 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
diff --git a/test/results/stats/default/custom_rules_same-ip_multiple_ports.pcapng.out b/test/results/stats/default/custom_rules_same-ip_multiple_ports.pcapng.out
index 3204fc65d..c72721154 100644
--- a/test/results/stats/default/custom_rules_same-ip_multiple_ports.pcapng.out
+++ b/test/results/stats/default/custom_rules_same-ip_multiple_ports.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dazn.pcapng.out b/test/results/stats/default/dazn.pcapng.out
index 02896f648..138f97ae9 100644
--- a/test/results/stats/default/dazn.pcapng.out
+++ b/test/results/stats/default/dazn.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:27
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:29028
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:29298
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dcerpc.pcap.out b/test/results/stats/default/dcerpc.pcap.out
index a6d98c31b..f8508f85d 100644
--- a/test/results/stats/default/dcerpc.pcap.out
+++ b/test/results/stats/default/dcerpc.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:29
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:27961
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:29217
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:4
@@ -11,7 +11,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:6194
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:14
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
@@ -60,7 +60,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interva
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
@@ -70,7 +70,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
@@ -92,9 +92,10 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
@@ -116,7 +117,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
diff --git a/test/results/stats/default/dhcp-fuzz.pcapng.out b/test/results/stats/default/dhcp-fuzz.pcapng.out
index 64d725c69..eaf6cf8ff 100644
--- a/test/results/stats/default/dhcp-fuzz.pcapng.out
+++ b/test/results/stats/default/dhcp-fuzz.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/diameter.pcap.out b/test/results/stats/default/diameter.pcap.out
index 6e42100a7..4d8d97f08 100644
--- a/test/results/stats/default/diameter.pcap.out
+++ b/test/results/stats/default/diameter.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/discord.pcap.out b/test/results/stats/default/discord.pcap.out
index 9161cf367..ba3ac4981 100644
--- a/test/results/stats/default/discord.pcap.out
+++ b/test/results/stats/default/discord.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:316
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:261994
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:262129
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:34
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:34
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:34
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/discord_mid_flow.pcap.out b/test/results/stats/default/discord_mid_flow.pcap.out
index 3ae31b5f9..73062d259 100644
--- a/test/results/stats/default/discord_mid_flow.pcap.out
+++ b/test/results/stats/default/discord_mid_flow.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dlms.pcap.out b/test/results/stats/default/dlms.pcap.out
new file mode 100644
index 000000000..5e2a39387
--- /dev/null
+++ b/test/results/stats/default/dlms.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:20
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13717
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:2659
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:32
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/dlt_ppp.pcap.out b/test/results/stats/default/dlt_ppp.pcap.out
index 2571e24a5..f7ad76c37 100644
--- a/test/results/stats/default/dlt_ppp.pcap.out
+++ b/test/results/stats/default/dlt_ppp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dnp3.pcap.out b/test/results/stats/default/dnp3.pcap.out
index a7598503d..658dd3157 100644
--- a/test/results/stats/default/dnp3.pcap.out
+++ b/test/results/stats/default/dnp3.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dns-exf.pcap.out b/test/results/stats/default/dns-exf.pcap.out
index c5fad65ee..d1e2eb858 100644
--- a/test/results/stats/default/dns-exf.pcap.out
+++ b/test/results/stats/default/dns-exf.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dns-google-nsid.pcapng.out b/test/results/stats/default/dns-google-nsid.pcapng.out
index a0d07d007..8152c7695 100644
--- a/test/results/stats/default/dns-google-nsid.pcapng.out
+++ b/test/results/stats/default/dns-google-nsid.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dns-invalid-chars.pcap.out b/test/results/stats/default/dns-invalid-chars.pcap.out
index a1c291585..729f5639c 100644
--- a/test/results/stats/default/dns-invalid-chars.pcap.out
+++ b/test/results/stats/default/dns-invalid-chars.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dns-tunnel-iodine.pcap.out b/test/results/stats/default/dns-tunnel-iodine.pcap.out
index 6fb1739b5..1989d12b3 100644
--- a/test/results/stats/default/dns-tunnel-iodine.pcap.out
+++ b/test/results/stats/default/dns-tunnel-iodine.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dns.pcap.out b/test/results/stats/default/dns.pcap.out
new file mode 100644
index 000000000..e37c7f9ce
--- /dev/null
+++ b/test/results/stats/default/dns.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:14
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:8597
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:67
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:33
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/dns2tcp_tunnel.pcap.out b/test/results/stats/default/dns2tcp_tunnel.pcap.out
index 254e0c18b..f6b1f6515 100644
--- a/test/results/stats/default/dns2tcp_tunnel.pcap.out
+++ b/test/results/stats/default/dns2tcp_tunnel.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12243
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12333
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
diff --git a/test/results/stats/default/dns_ambiguous_names.pcap.out b/test/results/stats/default/dns_ambiguous_names.pcap.out
index 1bdc34968..3e19d33d6 100644
--- a/test/results/stats/default/dns_ambiguous_names.pcap.out
+++ b/test/results/stats/default/dns_ambiguous_names.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dns_doh.pcap.out b/test/results/stats/default/dns_doh.pcap.out
index 3119c80d8..dd1c8268d 100644
--- a/test/results/stats/default/dns_doh.pcap.out
+++ b/test/results/stats/default/dns_doh.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:11714
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:11804
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dns_dot.pcap.out b/test/results/stats/default/dns_dot.pcap.out
index ff6f4c2cf..cf6959a93 100644
--- a/test/results/stats/default/dns_dot.pcap.out
+++ b/test/results/stats/default/dns_dot.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:10381
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:10471
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
diff --git a/test/results/stats/default/dns_exfiltration.pcap.out b/test/results/stats/default/dns_exfiltration.pcap.out
index 53b51f622..28f6c11da 100644
--- a/test/results/stats/default/dns_exfiltration.pcap.out
+++ b/test/results/stats/default/dns_exfiltration.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/dns_fragmented.pcap.out b/test/results/stats/default/dns_fragmented.pcap.out
index 18991c2a3..ed6f85b93 100644
--- a/test/results/stats/default/dns_fragmented.pcap.out
+++ b/test/results/stats/default/dns_fragmented.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:21
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:16
diff --git a/test/results/stats/default/dns_invert_query.pcapng.out b/test/results/stats/default/dns_invert_query.pcapng.out
index 490874074..4db622fb4 100644
--- a/test/results/stats/default/dns_invert_query.pcapng.out
+++ b/test/results/stats/default/dns_invert_query.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dns_long_domainname.pcap.out b/test/results/stats/default/dns_long_domainname.pcap.out
index 0668e2199..bc2c74221 100644
--- a/test/results/stats/default/dns_long_domainname.pcap.out
+++ b/test/results/stats/default/dns_long_domainname.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dnscrypt-v1-and-resolver-pings.pcap.out b/test/results/stats/default/dnscrypt-v1-and-resolver-pings.pcap.out
index f73ebfe13..c477a4009 100644
--- a/test/results/stats/default/dnscrypt-v1-and-resolver-pings.pcap.out
+++ b/test/results/stats/default/dnscrypt-v1-and-resolver-pings.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:245
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dnscrypt-v2-doh.pcap.out b/test/results/stats/default/dnscrypt-v2-doh.pcap.out
index 30014888b..9bc2b7fe5 100644
--- a/test/results/stats/default/dnscrypt-v2-doh.pcap.out
+++ b/test/results/stats/default/dnscrypt-v2-doh.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:309
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:413256
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:416406
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:34
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:34
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:34
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:6
diff --git a/test/results/stats/default/dnscrypt-v2.pcap.out b/test/results/stats/default/dnscrypt-v2.pcap.out
index 28bfe0eed..59df72b55 100644
--- a/test/results/stats/default/dnscrypt-v2.pcap.out
+++ b/test/results/stats/default/dnscrypt-v2.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dnscrypt_skype_false_positive.pcapng.out b/test/results/stats/default/dnscrypt_skype_false_positive.pcapng.out
index 3a2cf88dc..17a97b65b 100644
--- a/test/results/stats/default/dnscrypt_skype_false_positive.pcapng.out
+++ b/test/results/stats/default/dnscrypt_skype_false_positive.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/doh.pcapng.out b/test/results/stats/default/doh.pcapng.out
index 26a65e41e..441f6f3fd 100644
--- a/test/results/stats/default/doh.pcapng.out
+++ b/test/results/stats/default/doh.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12136
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12226
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
diff --git a/test/results/stats/default/doq.pcapng.out b/test/results/stats/default/doq.pcapng.out
index fb83058d8..c2cd7093b 100644
--- a/test/results/stats/default/doq.pcapng.out
+++ b/test/results/stats/default/doq.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:19
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:18369
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:18414
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/doq_adguard.pcapng.out b/test/results/stats/default/doq_adguard.pcapng.out
index cac0107f7..2cb091858 100644
--- a/test/results/stats/default/doq_adguard.pcapng.out
+++ b/test/results/stats/default/doq_adguard.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:16689
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:16734
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dos_win98_smb_netbeui.pcap.out b/test/results/stats/default/dos_win98_smb_netbeui.pcap.out
index fc9cbd9c9..f4bf46a7e 100644
--- a/test/results/stats/default/dos_win98_smb_netbeui.pcap.out
+++ b/test/results/stats/default/dos_win98_smb_netbeui.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/drda_db2.pcap.out b/test/results/stats/default/drda_db2.pcap.out
index 1d1cfa513..8c6d0d04a 100644
--- a/test/results/stats/default/drda_db2.pcap.out
+++ b/test/results/stats/default/drda_db2.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dropbox.pcap.out b/test/results/stats/default/dropbox.pcap.out
index c81c9607a..28840e50c 100644
--- a/test/results/stats/default/dropbox.pcap.out
+++ b/test/results/stats/default/dropbox.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:15
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dtls.pcap.out b/test/results/stats/default/dtls.pcap.out
index 47beed9ae..e21ef66d0 100644
--- a/test/results/stats/default/dtls.pcap.out
+++ b/test/results/stats/default/dtls.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:9
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:8134
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:8224
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/dtls2.pcap.out b/test/results/stats/default/dtls2.pcap.out
index d9aaab19f..b230f8dea 100644
--- a/test/results/stats/default/dtls2.pcap.out
+++ b/test/results/stats/default/dtls2.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:17
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:17947
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:18037
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/dtls_certificate.pcapng.out b/test/results/stats/default/dtls_certificate.pcapng.out
index df5705540..ef4954a29 100644
--- a/test/results/stats/default/dtls_certificate.pcapng.out
+++ b/test/results/stats/default/dtls_certificate.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:7
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:7855
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:7860
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dtls_certificate_fragments.pcap.out b/test/results/stats/default/dtls_certificate_fragments.pcap.out
index d490835e8..6a741f628 100644
--- a/test/results/stats/default/dtls_certificate_fragments.pcap.out
+++ b/test/results/stats/default/dtls_certificate_fragments.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:25
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:30786
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:30871
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
diff --git a/test/results/stats/default/dtls_mid_sessions.pcapng.out b/test/results/stats/default/dtls_mid_sessions.pcapng.out
index d9dae4572..fd8490977 100644
--- a/test/results/stats/default/dtls_mid_sessions.pcapng.out
+++ b/test/results/stats/default/dtls_mid_sessions.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dtls_old_version.pcapng.out b/test/results/stats/default/dtls_old_version.pcapng.out
index 4361afb41..ea8aef8e5 100644
--- a/test/results/stats/default/dtls_old_version.pcapng.out
+++ b/test/results/stats/default/dtls_old_version.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/dtls_session_id_and_coockie_both.pcap.out b/test/results/stats/default/dtls_session_id_and_coockie_both.pcap.out
index 41b80ce01..6d719e9ef 100644
--- a/test/results/stats/default/dtls_session_id_and_coockie_both.pcap.out
+++ b/test/results/stats/default/dtls_session_id_and_coockie_both.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9496
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9586
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/edonkey.pcap.out b/test/results/stats/default/edonkey.pcap.out
index 6028e68ab..1ca7f05e5 100644
--- a/test/results/stats/default/edonkey.pcap.out
+++ b/test/results/stats/default/edonkey.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/elasticsearch.pcap.out b/test/results/stats/default/elasticsearch.pcap.out
index 86b41584a..8cef95a4b 100644
--- a/test/results/stats/default/elasticsearch.pcap.out
+++ b/test/results/stats/default/elasticsearch.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/emotet.pcap.out b/test/results/stats/default/emotet.pcap.out
index cdbcc65a9..a5358937d 100644
--- a/test/results/stats/default/emotet.pcap.out
+++ b/test/results/stats/default/emotet.pcap.out
@@ -1,16 +1,16 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:63
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:60034
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:60
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:52875
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:6
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:6
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:406814
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:1588411
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:17972
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:71884
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:30
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
diff --git a/test/results/stats/default/encrypted_sni.pcap.out b/test/results/stats/default/encrypted_sni.pcap.out
index 31cf6a37a..122b26b4e 100644
--- a/test/results/stats/default/encrypted_sni.pcap.out
+++ b/test/results/stats/default/encrypted_sni.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:15
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15224
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15359
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/epicgames.pcapng.out b/test/results/stats/default/epicgames.pcapng.out
index d24b9fd1b..9b29650f2 100644
--- a/test/results/stats/default/epicgames.pcapng.out
+++ b/test/results/stats/default/epicgames.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/esp.pcapng.out b/test/results/stats/default/esp.pcapng.out
index 53e9ede49..64d811825 100644
--- a/test/results/stats/default/esp.pcapng.out
+++ b/test/results/stats/default/esp.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ethereum.pcap.out b/test/results/stats/default/ethereum.pcap.out
index 7bb8ddfd5..f5dd7ac10 100644
--- a/test/results/stats/default/ethereum.pcap.out
+++ b/test/results/stats/default/ethereum.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:71
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ethernetIP.pcap.out b/test/results/stats/default/ethernetIP.pcap.out
index e8210861a..2b8ee7cd8 100644
--- a/test/results/stats/default/ethernetIP.pcap.out
+++ b/test/results/stats/default/ethernetIP.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ethersbus.pcap.out b/test/results/stats/default/ethersbus.pcap.out
new file mode 100644
index 000000000..3fc298c73
--- /dev/null
+++ b/test/results/stats/default/ethersbus.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:7311
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:162
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:230
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/ethersio.pcap.out b/test/results/stats/default/ethersio.pcap.out
new file mode 100644
index 000000000..f9d8d60b2
--- /dev/null
+++ b/test/results/stats/default/ethersio.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9677
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:1714
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/exe_download.pcap.out b/test/results/stats/default/exe_download.pcap.out
index 202db8ab7..c82cde16c 100644
--- a/test/results/stats/default/exe_download.pcap.out
+++ b/test/results/stats/default/exe_download.pcap.out
@@ -1,16 +1,16 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12624
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9957
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:153
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:679332
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:13620
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/exe_download_as_png.pcap.out b/test/results/stats/default/exe_download_as_png.pcap.out
index d963ace55..a1addce51 100644
--- a/test/results/stats/default/exe_download_as_png.pcap.out
+++ b/test/results/stats/default/exe_download_as_png.pcap.out
@@ -1,16 +1,16 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12231
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12228
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:299
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:500298
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:149
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:88660
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/facebook.pcap.out b/test/results/stats/default/facebook.pcap.out
index 631f7c4ef..3d2838620 100644
--- a/test/results/stats/default/facebook.pcap.out
+++ b/test/results/stats/default/facebook.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:23
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:20634
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:20859
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/fastcgi.pcap.out b/test/results/stats/default/fastcgi.pcap.out
index 3b6642828..16c67177b 100644
--- a/test/results/stats/default/fastcgi.pcap.out
+++ b/test/results/stats/default/fastcgi.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/fins.pcap.out b/test/results/stats/default/fins.pcap.out
new file mode 100644
index 000000000..ba78d71aa
--- /dev/null
+++ b/test/results/stats/default/fins.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:50
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:28312
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:6659
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:252
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/firefox.pcap.out b/test/results/stats/default/firefox.pcap.out
index 3aaadd773..13a5c917d 100644
--- a/test/results/stats/default/firefox.pcap.out
+++ b/test/results/stats/default/firefox.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:57
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:48625
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:49165
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:6
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/fix.pcap.out b/test/results/stats/default/fix.pcap.out
index 0d266f5aa..c4c8c7b99 100644
--- a/test/results/stats/default/fix.pcap.out
+++ b/test/results/stats/default/fix.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:12
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/fix2.pcap.out b/test/results/stats/default/fix2.pcap.out
index a81f2d832..96cb83869 100644
--- a/test/results/stats/default/fix2.pcap.out
+++ b/test/results/stats/default/fix2.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/forticlient.pcap.out b/test/results/stats/default/forticlient.pcap.out
index b22e93d0b..5c6b50c84 100644
--- a/test/results/stats/default/forticlient.pcap.out
+++ b/test/results/stats/default/forticlient.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:54
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:52847
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:53522
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:10
diff --git a/test/results/stats/default/ftp-start-tls.pcap.out b/test/results/stats/default/ftp-start-tls.pcap.out
index 12c519c21..1ee21bfec 100644
--- a/test/results/stats/default/ftp-start-tls.pcap.out
+++ b/test/results/stats/default/ftp-start-tls.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/ftp.pcap.out b/test/results/stats/default/ftp.pcap.out
index bcaef21ae..7ae2e5c8e 100644
--- a/test/results/stats/default/ftp.pcap.out
+++ b/test/results/stats/default/ftp.pcap.out
@@ -1,8 +1,8 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:29
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:26734
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:26721
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:3
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
@@ -10,7 +10,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:174
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:1050670
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:111534
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:15
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/ftp_failed.pcap.out b/test/results/stats/default/ftp_failed.pcap.out
index 8fafd0a9f..e5a582088 100644
--- a/test/results/stats/default/ftp_failed.pcap.out
+++ b/test/results/stats/default/ftp_failed.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/fuzz-2006-06-26-2594.pcap.out b/test/results/stats/default/fuzz-2006-06-26-2594.pcap.out
index 3aa0bad05..11173c2df 100644
--- a/test/results/stats/default/fuzz-2006-06-26-2594.pcap.out
+++ b/test/results/stats/default/fuzz-2006-06-26-2594.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:191
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:120
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/fuzz-2006-09-29-28586.pcap.out b/test/results/stats/default/fuzz-2006-09-29-28586.pcap.out
index 251cc4a03..ec7d42094 100644
--- a/test/results/stats/default/fuzz-2006-09-29-28586.pcap.out
+++ b/test/results/stats/default/fuzz-2006-09-29-28586.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:12
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/fuzz-2020-02-16-11740.pcap.out b/test/results/stats/default/fuzz-2020-02-16-11740.pcap.out
index 2ed2a0f9c..39b8f8d97 100644
--- a/test/results/stats/default/fuzz-2020-02-16-11740.pcap.out
+++ b/test/results/stats/default/fuzz-2020-02-16-11740.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:57
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/fuzz-2021-06-07-c6c72a0a56.pcap.out b/test/results/stats/default/fuzz-2021-06-07-c6c72a0a56.pcap.out
index 23f3c6489..d866e7fd2 100644
--- a/test/results/stats/default/fuzz-2021-06-07-c6c72a0a56.pcap.out
+++ b/test/results/stats/default/fuzz-2021-06-07-c6c72a0a56.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/fuzz-2021-10-13.pcap.out b/test/results/stats/default/fuzz-2021-10-13.pcap.out
index add24dd56..9fd9c2072 100644
--- a/test/results/stats/default/fuzz-2021-10-13.pcap.out
+++ b/test/results/stats/default/fuzz-2021-10-13.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/gearman.pcap.out b/test/results/stats/default/gearman.pcap.out
new file mode 100644
index 000000000..af8c893ce
--- /dev/null
+++ b/test/results/stats/default/gearman.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:7286
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:26
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/geforcenow.pcapng.out b/test/results/stats/default/geforcenow.pcapng.out
index 0b66ad5cb..904ca4910 100644
--- a/test/results/stats/default/geforcenow.pcapng.out
+++ b/test/results/stats/default/geforcenow.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:27
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:33178
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:32935
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:6
@@ -116,8 +117,8 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:8
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
@@ -126,7 +127,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
diff --git a/test/results/stats/default/genshin-impact.pcap.out b/test/results/stats/default/genshin-impact.pcap.out
index 4a9d34e38..e0f19e0d8 100644
--- a/test/results/stats/default/genshin-impact.pcap.out
+++ b/test/results/stats/default/genshin-impact.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/git.pcap.out b/test/results/stats/default/git.pcap.out
index ab1ea7918..064e4162a 100644
--- a/test/results/stats/default/git.pcap.out
+++ b/test/results/stats/default/git.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/gnutella.pcap.out b/test/results/stats/default/gnutella.pcap.out
index 24f9cab4d..8275ff3fa 100644
--- a/test/results/stats/default/gnutella.pcap.out
+++ b/test/results/stats/default/gnutella.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:6866
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:5752180
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:5752910
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:801
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:66
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:735
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:401
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:362
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:8
diff --git a/test/results/stats/default/google_chat.pcapng.out b/test/results/stats/default/google_chat.pcapng.out
new file mode 100644
index 000000000..98e3972d3
--- /dev/null
+++ b/test/results/stats/default/google_chat.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9884
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:663
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:2800
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/google_meet.pcapng.out b/test/results/stats/default/google_meet.pcapng.out
new file mode 100644
index 000000000..368e819cb
--- /dev/null
+++ b/test/results/stats/default/google_meet.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:20
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:22243
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:1824
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:6400
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/google_ssl.pcap.out b/test/results/stats/default/google_ssl.pcap.out
index dd8d7202d..184ce5105 100644
--- a/test/results/stats/default/google_ssl.pcap.out
+++ b/test/results/stats/default/google_ssl.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/googledns_android10.pcap.out b/test/results/stats/default/googledns_android10.pcap.out
index e002cfa4a..585e84bfc 100644
--- a/test/results/stats/default/googledns_android10.pcap.out
+++ b/test/results/stats/default/googledns_android10.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:77
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:70113
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:70743
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:14
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/gquic.pcap.out b/test/results/stats/default/gquic.pcap.out
index 07bd65ec9..936e90ff9 100644
--- a/test/results/stats/default/gquic.pcap.out
+++ b/test/results/stats/default/gquic.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/gquic_only_from_server.pcap.out b/test/results/stats/default/gquic_only_from_server.pcap.out
new file mode 100644
index 000000000..f4c6dec9f
--- /dev/null
+++ b/test/results/stats/default/gquic_only_from_server.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14742
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:38360
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/gtp_c.pcap.out b/test/results/stats/default/gtp_c.pcap.out
index 7ae4a5805..7b60d3234 100644
--- a/test/results/stats/default/gtp_c.pcap.out
+++ b/test/results/stats/default/gtp_c.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/gtp_false_positive.pcapng.out b/test/results/stats/default/gtp_false_positive.pcapng.out
index b63f5ac50..08d1573b7 100644
--- a/test/results/stats/default/gtp_false_positive.pcapng.out
+++ b/test/results/stats/default/gtp_false_positive.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/gtp_prime.pcapng.out b/test/results/stats/default/gtp_prime.pcapng.out
index f5b3fa5d3..5f14bf90c 100644
--- a/test/results/stats/default/gtp_prime.pcapng.out
+++ b/test/results/stats/default/gtp_prime.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/h323-overflow.pcap.out b/test/results/stats/default/h323-overflow.pcap.out
index c4300d23b..b768f2d83 100644
--- a/test/results/stats/default/h323-overflow.pcap.out
+++ b/test/results/stats/default/h323-overflow.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/h323.pcap.out b/test/results/stats/default/h323.pcap.out
index e21a280c4..edb083c98 100644
--- a/test/results/stats/default/h323.pcap.out
+++ b/test/results/stats/default/h323.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:16
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12121
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12119
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/h323_tcp.pcap.out b/test/results/stats/default/h323_tcp.pcap.out
new file mode 100644
index 000000000..c919c3a5c
--- /dev/null
+++ b/test/results/stats/default/h323_tcp.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:7544
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:225
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:160
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/haproxy.pcap.out b/test/results/stats/default/haproxy.pcap.out
index 58aec991d..23b1e2cce 100644
--- a/test/results/stats/default/haproxy.pcap.out
+++ b/test/results/stats/default/haproxy.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/hart_ip.pcap.out b/test/results/stats/default/hart_ip.pcap.out
new file mode 100644
index 000000000..f578df3b2
--- /dev/null
+++ b/test/results/stats/default/hart_ip.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:24
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:18166
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:581
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:555
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/heuristic_tcp_ack_payload.pcap.out b/test/results/stats/default/heuristic_tcp_ack_payload.pcap.out
index 66f9db1bf..1aee1dc8d 100644
--- a/test/results/stats/default/heuristic_tcp_ack_payload.pcap.out
+++ b/test/results/stats/default/heuristic_tcp_ack_payload.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/hislip.pcap.out b/test/results/stats/default/hislip.pcap.out
new file mode 100644
index 000000000..bbcad521f
--- /dev/null
+++ b/test/results/stats/default/hislip.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:39
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:32627
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:830
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:1033
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:20
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/hl7.pcap.out b/test/results/stats/default/hl7.pcap.out
new file mode 100644
index 000000000..3fcdf2b74
--- /dev/null
+++ b/test/results/stats/default/hl7.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:8325
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:477
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:168
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/hots.pcapng.out b/test/results/stats/default/hots.pcapng.out
index 3d07cea52..f08759649 100644
--- a/test/results/stats/default/hots.pcapng.out
+++ b/test/results/stats/default/hots.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/hpvirtgrp.pcap.out b/test/results/stats/default/hpvirtgrp.pcap.out
index c895ebcb7..fef227348 100644
--- a/test/results/stats/default/hpvirtgrp.pcap.out
+++ b/test/results/stats/default/hpvirtgrp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/hsrp0.pcap.out b/test/results/stats/default/hsrp0.pcap.out
index 733eb9ad4..5fe01d203 100644
--- a/test/results/stats/default/hsrp0.pcap.out
+++ b/test/results/stats/default/hsrp0.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/hsrp2.pcap.out b/test/results/stats/default/hsrp2.pcap.out
index fc7be38f6..3fe01bdb6 100644
--- a/test/results/stats/default/hsrp2.pcap.out
+++ b/test/results/stats/default/hsrp2.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/hsrp2_ipv6.pcapng.out b/test/results/stats/default/hsrp2_ipv6.pcapng.out
index 0bbc92b4f..c32ca518d 100644
--- a/test/results/stats/default/hsrp2_ipv6.pcapng.out
+++ b/test/results/stats/default/hsrp2_ipv6.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/http-crash-content-disposition.pcap.out b/test/results/stats/default/http-crash-content-disposition.pcap.out
index a68a22292..a9a475d32 100644
--- a/test/results/stats/default/http-crash-content-disposition.pcap.out
+++ b/test/results/stats/default/http-crash-content-disposition.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/http-lines-split.pcap.out b/test/results/stats/default/http-lines-split.pcap.out
index 3a0344bc4..a06e718f1 100644
--- a/test/results/stats/default/http-lines-split.pcap.out
+++ b/test/results/stats/default/http-lines-split.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/http-manipulated.pcap.out b/test/results/stats/default/http-manipulated.pcap.out
index c33c78dd6..05efe7790 100644
--- a/test/results/stats/default/http-manipulated.pcap.out
+++ b/test/results/stats/default/http-manipulated.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/http-proxy.pcapng.out b/test/results/stats/default/http-proxy.pcapng.out
index b5e9024a8..268084b17 100644
--- a/test/results/stats/default/http-proxy.pcapng.out
+++ b/test/results/stats/default/http-proxy.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/http.pcapng.out b/test/results/stats/default/http.pcapng.out
new file mode 100644
index 000000000..c3943abad
--- /dev/null
+++ b/test/results/stats/default/http.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:7548
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:74
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:528
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/http2.pcapng.out b/test/results/stats/default/http2.pcapng.out
index 81adefffe..ad7b01860 100644
--- a/test/results/stats/default/http2.pcapng.out
+++ b/test/results/stats/default/http2.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/http_asymmetric.pcapng.out b/test/results/stats/default/http_asymmetric.pcapng.out
index b2cd4b951..76d7297cf 100644
--- a/test/results/stats/default/http_asymmetric.pcapng.out
+++ b/test/results/stats/default/http_asymmetric.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:20
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:20857
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:20861
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/http_auth.pcap.out b/test/results/stats/default/http_auth.pcap.out
index 08b753831..e816b9cb9 100644
--- a/test/results/stats/default/http_auth.pcap.out
+++ b/test/results/stats/default/http_auth.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/http_connect.pcap.out b/test/results/stats/default/http_connect.pcap.out
index d1118f71c..1f1fbaaa2 100644
--- a/test/results/stats/default/http_connect.pcap.out
+++ b/test/results/stats/default/http_connect.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:28
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:24874
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:24964
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/http_guessed_host_and_guessed.pcapng.out b/test/results/stats/default/http_guessed_host_and_guessed.pcapng.out
index ffe3f2a7a..0baea7d5c 100644
--- a/test/results/stats/default/http_guessed_host_and_guessed.pcapng.out
+++ b/test/results/stats/default/http_guessed_host_and_guessed.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/http_invalid_server.pcap.out b/test/results/stats/default/http_invalid_server.pcap.out
index 537bfa3bd..58361a94e 100644
--- a/test/results/stats/default/http_invalid_server.pcap.out
+++ b/test/results/stats/default/http_invalid_server.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/http_ipv6.pcap.out b/test/results/stats/default/http_ipv6.pcap.out
index fcb6b8068..4d941275b 100644
--- a/test/results/stats/default/http_ipv6.pcap.out
+++ b/test/results/stats/default/http_ipv6.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:117
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:105125
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:105890
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:15
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:12
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/http_on_sip_port.pcap.out b/test/results/stats/default/http_on_sip_port.pcap.out
index d8cda89f5..cc7e57a14 100644
--- a/test/results/stats/default/http_on_sip_port.pcap.out
+++ b/test/results/stats/default/http_on_sip_port.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/http_origin_different_than_host.pcap.out b/test/results/stats/default/http_origin_different_than_host.pcap.out
index 5da4d298e..fedacb67a 100644
--- a/test/results/stats/default/http_origin_different_than_host.pcap.out
+++ b/test/results/stats/default/http_origin_different_than_host.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/http_starting_with_reply.pcapng.out b/test/results/stats/default/http_starting_with_reply.pcapng.out
index 3c304d3bb..e44bade6e 100644
--- a/test/results/stats/default/http_starting_with_reply.pcapng.out
+++ b/test/results/stats/default/http_starting_with_reply.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/http_ua_splitted_in_two_pkts.pcapng.out b/test/results/stats/default/http_ua_splitted_in_two_pkts.pcapng.out
index 69e8a61a6..04b7a0667 100644
--- a/test/results/stats/default/http_ua_splitted_in_two_pkts.pcapng.out
+++ b/test/results/stats/default/http_ua_splitted_in_two_pkts.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/i3d.pcap.out b/test/results/stats/default/i3d.pcap.out
index 179c5a555..20a7548a0 100644
--- a/test/results/stats/default/i3d.pcap.out
+++ b/test/results/stats/default/i3d.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/iax.pcap.out b/test/results/stats/default/iax.pcap.out
index 8e8e78397..c116a1765 100644
--- a/test/results/stats/default/iax.pcap.out
+++ b/test/results/stats/default/iax.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/icmp-tunnel.pcap.out b/test/results/stats/default/icmp-tunnel.pcap.out
index 8a199def5..d0bfc45b4 100644
--- a/test/results/stats/default/icmp-tunnel.pcap.out
+++ b/test/results/stats/default/icmp-tunnel.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/iec60780-5-104.pcap.out b/test/results/stats/default/iec60780-5-104.pcap.out
index f4ec24e67..3f7f897f0 100644
--- a/test/results/stats/default/iec60780-5-104.pcap.out
+++ b/test/results/stats/default/iec60780-5-104.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ieee_c37118.pcap.out b/test/results/stats/default/ieee_c37118.pcap.out
new file mode 100644
index 000000000..ede188bda
--- /dev/null
+++ b/test/results/stats/default/ieee_c37118.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:22
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:18468
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:126
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:31204
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/imap-starttls.pcap.out b/test/results/stats/default/imap-starttls.pcap.out
index a22663315..024f07e73 100644
--- a/test/results/stats/default/imap-starttls.pcap.out
+++ b/test/results/stats/default/imap-starttls.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
diff --git a/test/results/stats/default/imap.pcap.out b/test/results/stats/default/imap.pcap.out
index 257928df0..bdeb3ca05 100644
--- a/test/results/stats/default/imap.pcap.out
+++ b/test/results/stats/default/imap.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/imaps.pcap.out b/test/results/stats/default/imaps.pcap.out
index 08ce75131..5b472a1a4 100644
--- a/test/results/stats/default/imaps.pcap.out
+++ b/test/results/stats/default/imaps.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/imo.pcap.out b/test/results/stats/default/imo.pcap.out
index 8ac238176..444fc780a 100644
--- a/test/results/stats/default/imo.pcap.out
+++ b/test/results/stats/default/imo.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/instagram.pcap.out b/test/results/stats/default/instagram.pcap.out
index 7f688ea2a..e7f8acc33 100644
--- a/test/results/stats/default/instagram.pcap.out
+++ b/test/results/stats/default/instagram.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:299
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:318080
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:319250
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:38
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:32
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:30
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ip_fragmented_garbage.pcap.out b/test/results/stats/default/ip_fragmented_garbage.pcap.out
index ac38ab7be..0ca2d892e 100644
--- a/test/results/stats/default/ip_fragmented_garbage.pcap.out
+++ b/test/results/stats/default/ip_fragmented_garbage.pcap.out
@@ -1,19 +1,19 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:151
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:101187
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:29
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:19
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:51
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:25520
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:29
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:80
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:16
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:29
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
@@ -100,18 +101,18 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:29
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:29
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:29
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:29
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
diff --git a/test/results/stats/default/iphone.pcap.out b/test/results/stats/default/iphone.pcap.out
index 3be31a222..5c2ca8e12 100644
--- a/test/results/stats/default/iphone.pcap.out
+++ b/test/results/stats/default/iphone.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:356
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:322035
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:323610
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:51
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:48
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:50
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ipp.pcap.out b/test/results/stats/default/ipp.pcap.out
index d2bb812d6..82b6b1698 100644
--- a/test/results/stats/default/ipp.pcap.out
+++ b/test/results/stats/default/ipp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
diff --git a/test/results/stats/default/ipsec_isakmp_esp.pcap.out b/test/results/stats/default/ipsec_isakmp_esp.pcap.out
index a9d5a15c7..a883c9bf9 100644
--- a/test/results/stats/default/ipsec_isakmp_esp.pcap.out
+++ b/test/results/stats/default/ipsec_isakmp_esp.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:321
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:314839
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:314809
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:36
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:36
@@ -9,8 +9,8 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:36
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:341776
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:193546
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:271448
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:145246
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:174
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:36
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ipv6_in_gtp.pcap.out b/test/results/stats/default/ipv6_in_gtp.pcap.out
index e515f5755..caa325274 100644
--- a/test/results/stats/default/ipv6_in_gtp.pcap.out
+++ b/test/results/stats/default/ipv6_in_gtp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/irc.pcap.out b/test/results/stats/default/irc.pcap.out
index bf6f799d8..a896ba849 100644
--- a/test/results/stats/default/irc.pcap.out
+++ b/test/results/stats/default/irc.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/iso9506-1-mms.pcap.out b/test/results/stats/default/iso9506-1-mms.pcap.out
new file mode 100644
index 000000000..66cb0fe8e
--- /dev/null
+++ b/test/results/stats/default/iso9506-1-mms.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:7385
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:374
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:283
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/ja3_lots_of_cipher_suites.pcap.out b/test/results/stats/default/ja3_lots_of_cipher_suites.pcap.out
index 231d5fda0..c5bd54714 100644
--- a/test/results/stats/default/ja3_lots_of_cipher_suites.pcap.out
+++ b/test/results/stats/default/ja3_lots_of_cipher_suites.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ja3_lots_of_cipher_suites_2_anon.pcap.out b/test/results/stats/default/ja3_lots_of_cipher_suites_2_anon.pcap.out
index 02eacfefc..209317cf3 100644
--- a/test/results/stats/default/ja3_lots_of_cipher_suites_2_anon.pcap.out
+++ b/test/results/stats/default/ja3_lots_of_cipher_suites_2_anon.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/jabber.pcap.out b/test/results/stats/default/jabber.pcap.out
index aec8ad47f..972268f88 100644
--- a/test/results/stats/default/jabber.pcap.out
+++ b/test/results/stats/default/jabber.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:12
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/jsonrpc.pcap.out b/test/results/stats/default/jsonrpc.pcap.out
new file mode 100644
index 000000000..f11696b70
--- /dev/null
+++ b/test/results/stats/default/jsonrpc.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:20
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:16291
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:1176
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:615
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/kafka.pcapng.out b/test/results/stats/default/kafka.pcapng.out
new file mode 100644
index 000000000..e39584249
--- /dev/null
+++ b/test/results/stats/default/kafka.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:7387
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:307
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:660
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/kcp.pcap.out b/test/results/stats/default/kcp.pcap.out
new file mode 100644
index 000000000..415590943
--- /dev/null
+++ b/test/results/stats/default/kcp.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:36
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:46196
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:28368
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:4816
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/kerberos-error.pcap.out b/test/results/stats/default/kerberos-error.pcap.out
index 1e5c6858d..20ff8c696 100644
--- a/test/results/stats/default/kerberos-error.pcap.out
+++ b/test/results/stats/default/kerberos-error.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/kerberos-login.pcap.out b/test/results/stats/default/kerberos-login.pcap.out
index c11351af4..86743e659 100644
--- a/test/results/stats/default/kerberos-login.pcap.out
+++ b/test/results/stats/default/kerberos-login.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:13
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/kerberos.pcap.out b/test/results/stats/default/kerberos.pcap.out
index 668c4f73f..e17e1dbf4 100644
--- a/test/results/stats/default/kerberos.pcap.out
+++ b/test/results/stats/default/kerberos.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:11
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/kerberos_fuzz.pcapng.out b/test/results/stats/default/kerberos_fuzz.pcapng.out
index 09390ee21..131e0114f 100644
--- a/test/results/stats/default/kerberos_fuzz.pcapng.out
+++ b/test/results/stats/default/kerberos_fuzz.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/kismet.pcap.out b/test/results/stats/default/kismet.pcap.out
index be61306e4..281eb361f 100644
--- a/test/results/stats/default/kismet.pcap.out
+++ b/test/results/stats/default/kismet.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/kontiki.pcap.out b/test/results/stats/default/kontiki.pcap.out
index db72765e7..bd7c7b96a 100644
--- a/test/results/stats/default/kontiki.pcap.out
+++ b/test/results/stats/default/kontiki.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/line.pcap.out b/test/results/stats/default/line.pcap.out
index 81fba0a26..16e29e859 100644
--- a/test/results/stats/default/line.pcap.out
+++ b/test/results/stats/default/line.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:51
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:52006
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:52141
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:4
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/linecall_falsepositve.pcap.out b/test/results/stats/default/linecall_falsepositve.pcap.out
index aa3747b0d..9bdecff76 100644
--- a/test/results/stats/default/linecall_falsepositve.pcap.out
+++ b/test/results/stats/default/linecall_falsepositve.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/lisp_registration.pcap.out b/test/results/stats/default/lisp_registration.pcap.out
index e33e667d5..8ffcd225f 100644
--- a/test/results/stats/default/lisp_registration.pcap.out
+++ b/test/results/stats/default/lisp_registration.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/log4j-webapp-exploit.pcap.out b/test/results/stats/default/log4j-webapp-exploit.pcap.out
index a3501c7ec..04d0df2c2 100644
--- a/test/results/stats/default/log4j-webapp-exploit.pcap.out
+++ b/test/results/stats/default/log4j-webapp-exploit.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
diff --git a/test/results/stats/default/long_tls_certificate.pcap.out b/test/results/stats/default/long_tls_certificate.pcap.out
index 5e9ba00b6..7a65939ac 100644
--- a/test/results/stats/default/long_tls_certificate.pcap.out
+++ b/test/results/stats/default/long_tls_certificate.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:14
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:17195
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:17330
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/lru_ipv6_caches.pcapng.out b/test/results/stats/default/lru_ipv6_caches.pcapng.out
index ecd9e4be1..7f39a57d4 100644
--- a/test/results/stats/default/lru_ipv6_caches.pcapng.out
+++ b/test/results/stats/default/lru_ipv6_caches.pcapng.out
@@ -1,5 +1,5 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:85
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:86431
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:86
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:87622
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:12
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:12
@@ -7,7 +7,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:12
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:14408
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:846
@@ -87,14 +87,15 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:6
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:10
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
@@ -116,7 +117,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
diff --git a/test/results/stats/default/malformed_dns.pcap.out b/test/results/stats/default/malformed_dns.pcap.out
index 4ad47ae44..0c06b0eae 100644
--- a/test/results/stats/default/malformed_dns.pcap.out
+++ b/test/results/stats/default/malformed_dns.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/malformed_icmp.pcap.out b/test/results/stats/default/malformed_icmp.pcap.out
index 7b12c9418..717f56f04 100644
--- a/test/results/stats/default/malformed_icmp.pcap.out
+++ b/test/results/stats/default/malformed_icmp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/malware.pcap.out b/test/results/stats/default/malware.pcap.out
index 586465bc0..ac1a98fb2 100644
--- a/test/results/stats/default/malware.pcap.out
+++ b/test/results/stats/default/malware.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:44
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:39583
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:39804
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:5
@@ -9,8 +9,8 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:5602
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:521068
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:3925
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:51588
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:16
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/memcached.cap.out b/test/results/stats/default/memcached.cap.out
index dc9c0bba6..18266b9ab 100644
--- a/test/results/stats/default/memcached.cap.out
+++ b/test/results/stats/default/memcached.cap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/merakicloud.pcapng.out b/test/results/stats/default/merakicloud.pcapng.out
index 998f0e83f..b478f7995 100644
--- a/test/results/stats/default/merakicloud.pcapng.out
+++ b/test/results/stats/default/merakicloud.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/mgcp.pcap.out b/test/results/stats/default/mgcp.pcap.out
index 0e382a8ad..05276e987 100644
--- a/test/results/stats/default/mgcp.pcap.out
+++ b/test/results/stats/default/mgcp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/mining.pcapng.out b/test/results/stats/default/mining.pcapng.out
new file mode 100644
index 000000000..7951a6a5e
--- /dev/null
+++ b/test/results/stats/default/mining.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:41
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:36311
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:146948
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:30432
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:20
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/modbus.pcap.out b/test/results/stats/default/modbus.pcap.out
index 4b7741da8..45b829306 100644
--- a/test/results/stats/default/modbus.pcap.out
+++ b/test/results/stats/default/modbus.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/monero.pcap.out b/test/results/stats/default/monero.pcap.out
index 07f5d7856..1579a2d01 100644
--- a/test/results/stats/default/monero.pcap.out
+++ b/test/results/stats/default/monero.pcap.out
@@ -1,23 +1,23 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:22
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:18888
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:35
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:25217
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:135768
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:10322
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:1180
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:56628
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:20
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
@@ -36,9 +36,9 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
@@ -74,42 +74,43 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:2
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
@@ -133,7 +134,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
diff --git a/test/results/stats/default/mongo_false_positive.pcapng.out b/test/results/stats/default/mongo_false_positive.pcapng.out
index c3bda15e5..39726cc2f 100644
--- a/test/results/stats/default/mongo_false_positive.pcapng.out
+++ b/test/results/stats/default/mongo_false_positive.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/mongodb.pcap.out b/test/results/stats/default/mongodb.pcap.out
index 1cf946cb4..ca60352ba 100644
--- a/test/results/stats/default/mongodb.pcap.out
+++ b/test/results/stats/default/mongodb.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/mpeg-dash.pcap.out b/test/results/stats/default/mpeg-dash.pcap.out
index 119cf03cc..0ba7e8056 100644
--- a/test/results/stats/default/mpeg-dash.pcap.out
+++ b/test/results/stats/default/mpeg-dash.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/mpeg.pcap.out b/test/results/stats/default/mpeg.pcap.out
index cfd23d553..20b708c97 100644
--- a/test/results/stats/default/mpeg.pcap.out
+++ b/test/results/stats/default/mpeg.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/mpegts.pcap.out b/test/results/stats/default/mpegts.pcap.out
index 72569cce4..874e1f85e 100644
--- a/test/results/stats/default/mpegts.pcap.out
+++ b/test/results/stats/default/mpegts.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/mqtt.pcap.out b/test/results/stats/default/mqtt.pcap.out
index 097e12db6..28b7cfe2c 100644
--- a/test/results/stats/default/mqtt.pcap.out
+++ b/test/results/stats/default/mqtt.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/mssql_tds.pcap.out b/test/results/stats/default/mssql_tds.pcap.out
index 2c336393a..c6d0515ac 100644
--- a/test/results/stats/default/mssql_tds.pcap.out
+++ b/test/results/stats/default/mssql_tds.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:11
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/mullvad_dns.pcap.out b/test/results/stats/default/mullvad_dns.pcap.out
index e6504f240..af546a6a0 100644
--- a/test/results/stats/default/mullvad_dns.pcap.out
+++ b/test/results/stats/default/mullvad_dns.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/mullvad_wireguard.pcap.out b/test/results/stats/default/mullvad_wireguard.pcap.out
index a4bc05d9c..4ff23a9aa 100644
--- a/test/results/stats/default/mullvad_wireguard.pcap.out
+++ b/test/results/stats/default/mullvad_wireguard.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/mumble.pcapng.out b/test/results/stats/default/mumble.pcapng.out
new file mode 100644
index 000000000..4d97ddebb
--- /dev/null
+++ b/test/results/stats/default/mumble.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:22
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:17494
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:541
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:1488
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:9
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/munin.pcap.out b/test/results/stats/default/munin.pcap.out
index 4d07fe788..4207c6a79 100644
--- a/test/results/stats/default/munin.pcap.out
+++ b/test/results/stats/default/munin.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/mysql-8.pcap.out b/test/results/stats/default/mysql.pcapng.out
index c906dcf3b..c66788c6f 100644
--- a/test/results/stats/default/mysql-8.pcap.out
+++ b/test/results/stats/default/mysql.pcapng.out
@@ -1,19 +1,19 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:19
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13132
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:20
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13758
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:808
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:3074
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:1084
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:3187
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:9
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/natpmp.pcap.out b/test/results/stats/default/natpmp.pcap.out
index c10b54782..df92928b8 100644
--- a/test/results/stats/default/natpmp.pcap.out
+++ b/test/results/stats/default/natpmp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/nats.pcap.out b/test/results/stats/default/nats.pcap.out
index d396ede3a..18f538f9f 100644
--- a/test/results/stats/default/nats.pcap.out
+++ b/test/results/stats/default/nats.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ndpi_match_string_subprotocol__error.pcapng.out b/test/results/stats/default/ndpi_match_string_subprotocol__error.pcapng.out
index 57dea2f99..937bcf856 100644
--- a/test/results/stats/default/ndpi_match_string_subprotocol__error.pcapng.out
+++ b/test/results/stats/default/ndpi_match_string_subprotocol__error.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/nest_log_sink.pcap.out b/test/results/stats/default/nest_log_sink.pcap.out
index 474a04ead..7b03446d0 100644
--- a/test/results/stats/default/nest_log_sink.pcap.out
+++ b/test/results/stats/default/nest_log_sink.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:16
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/netbios.pcap.out b/test/results/stats/default/netbios.pcap.out
index d0aa28475..b450f47f7 100644
--- a/test/results/stats/default/netbios.pcap.out
+++ b/test/results/stats/default/netbios.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:14
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/netbios_wildcard_dns_query.pcap.out b/test/results/stats/default/netbios_wildcard_dns_query.pcap.out
index 97fc69760..8e8d42484 100644
--- a/test/results/stats/default/netbios_wildcard_dns_query.pcap.out
+++ b/test/results/stats/default/netbios_wildcard_dns_query.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/netflix.pcap.out b/test/results/stats/default/netflix.pcap.out
index 27a558e23..c32a195f4 100644
--- a/test/results/stats/default/netflix.pcap.out
+++ b/test/results/stats/default/netflix.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:557
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:553210
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:555730
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:61
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:31
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:30
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:60
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:70
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/netflow-fritz.pcap.out b/test/results/stats/default/netflow-fritz.pcap.out
index ae45a993a..46ee4f63a 100644
--- a/test/results/stats/default/netflow-fritz.pcap.out
+++ b/test/results/stats/default/netflow-fritz.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/netflowv9.pcap.out b/test/results/stats/default/netflowv9.pcap.out
index 97a790d52..c45c5adb7 100644
--- a/test/results/stats/default/netflowv9.pcap.out
+++ b/test/results/stats/default/netflowv9.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/nfsv2.pcap.out b/test/results/stats/default/nfsv2.pcap.out
index ddf3a2ab3..e033bd435 100644
--- a/test/results/stats/default/nfsv2.pcap.out
+++ b/test/results/stats/default/nfsv2.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:5
diff --git a/test/results/stats/default/nfsv3.pcap.out b/test/results/stats/default/nfsv3.pcap.out
index 32e5c19c2..fbc788d92 100644
--- a/test/results/stats/default/nfsv3.pcap.out
+++ b/test/results/stats/default/nfsv3.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:6
diff --git a/test/results/stats/default/nintendo.pcap.out b/test/results/stats/default/nintendo.pcap.out
index f4e0fbbf3..fbee36788 100644
--- a/test/results/stats/default/nintendo.pcap.out
+++ b/test/results/stats/default/nintendo.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:164
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:135106
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:135376
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:21
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:19
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:15
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/nntp.pcap.out b/test/results/stats/default/nntp.pcap.out
index 98cfe9e13..96c630cb1 100644
--- a/test/results/stats/default/nntp.pcap.out
+++ b/test/results/stats/default/nntp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/no_sni.pcap.out b/test/results/stats/default/no_sni.pcap.out
index 76c3979d3..ed72d4652 100644
--- a/test/results/stats/default/no_sni.pcap.out
+++ b/test/results/stats/default/no_sni.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:79
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:70589
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:71219
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:5
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/nomachine.pcapng.out b/test/results/stats/default/nomachine.pcapng.out
new file mode 100644
index 000000000..8889baffb
--- /dev/null
+++ b/test/results/stats/default/nomachine.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:20
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15608
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:655
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:2744
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/ocs.pcap.out b/test/results/stats/default/ocs.pcap.out
index b6feed91e..79dfca4c8 100644
--- a/test/results/stats/default/ocs.pcap.out
+++ b/test/results/stats/default/ocs.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:137
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:113267
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:113492
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:20
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:15
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:18
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:11
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ocsp.pcapng.out b/test/results/stats/default/ocsp.pcapng.out
index c2ea57bf6..82aab2122 100644
--- a/test/results/stats/default/ocsp.pcapng.out
+++ b/test/results/stats/default/ocsp.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/oicq.pcap.out b/test/results/stats/default/oicq.pcap.out
index 3d3099681..5f7ed1392 100644
--- a/test/results/stats/default/oicq.pcap.out
+++ b/test/results/stats/default/oicq.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:29
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ookla.pcap.out b/test/results/stats/default/ookla.pcap.out
index dc106adde..39e9b012a 100644
--- a/test/results/stats/default/ookla.pcap.out
+++ b/test/results/stats/default/ookla.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:56
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:43291
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:43516
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:5
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
diff --git a/test/results/stats/default/opc-ua.pcap.out b/test/results/stats/default/opc-ua.pcap.out
new file mode 100644
index 000000000..171e21413
--- /dev/null
+++ b/test/results/stats/default/opc-ua.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9460
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:12547
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:11671
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/openflow.pcap.out b/test/results/stats/default/openflow.pcap.out
new file mode 100644
index 000000000..d71cf9909
--- /dev/null
+++ b/test/results/stats/default/openflow.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:7385
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:332
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:92
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/steam.pcap.out b/test/results/stats/default/openvpn-tlscrypt.pcap.out
index 51b0ce808..6d7ae19d6 100644
--- a/test/results/stats/default/steam.pcap.out
+++ b/test/results/stats/default/openvpn-tlscrypt.pcap.out
@@ -1,24 +1,24 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:281
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:217287
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:58
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:29
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:17358
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:58
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:58
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:2666
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:2072
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:101
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:13
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:4
-PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:13
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
@@ -37,7 +37,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:58
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
@@ -52,7 +52,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interva
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:58
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
@@ -88,10 +88,11 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:58
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
@@ -100,16 +101,16 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:58
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:58
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:58
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:58
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
diff --git a/test/results/stats/default/openvpn.pcap.out b/test/results/stats/default/openvpn.pcap.out
index c038842cb..d5396b3d4 100644
--- a/test/results/stats/default/openvpn.pcap.out
+++ b/test/results/stats/default/openvpn.pcap.out
@@ -1,23 +1,23 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:32
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:28570
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:78
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:72460
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:8
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:19308
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:22991
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:44541
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:41567
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:15
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:40
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
@@ -36,7 +36,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
@@ -46,7 +46,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
@@ -88,35 +88,36 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:3
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:8
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
@@ -157,7 +158,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
diff --git a/test/results/stats/default/openvpn_nohmac.pcapng.out b/test/results/stats/default/openvpn_nohmac.pcapng.out
new file mode 100644
index 000000000..c4314d9fe
--- /dev/null
+++ b/test/results/stats/default/openvpn_nohmac.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:10817
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:113447
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:150832
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/openvpn_nohmac_tcp.pcapng.out b/test/results/stats/default/openvpn_nohmac_tcp.pcapng.out
new file mode 100644
index 000000000..481621d43
--- /dev/null
+++ b/test/results/stats/default/openvpn_nohmac_tcp.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9706
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:6986
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:7709
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/opera-vpn.pcapng.out b/test/results/stats/default/opera-vpn.pcapng.out
index 51a962cc0..28cb7e4de 100644
--- a/test/results/stats/default/opera-vpn.pcapng.out
+++ b/test/results/stats/default/opera-vpn.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:618
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:612038
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:617528
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:62
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:28
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:34
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:61
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/oracle12.pcapng.out b/test/results/stats/default/oracle12.pcapng.out
index 9e10767cb..fa385d30e 100644
--- a/test/results/stats/default/oracle12.pcapng.out
+++ b/test/results/stats/default/oracle12.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/os_detected.pcapng.out b/test/results/stats/default/os_detected.pcapng.out
index 878a05bcb..92c336003 100644
--- a/test/results/stats/default/os_detected.pcapng.out
+++ b/test/results/stats/default/os_detected.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:7
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:7652
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:7697
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/ospfv2_add_new_prefix.pcap.out b/test/results/stats/default/ospfv2_add_new_prefix.pcap.out
index f6d9628b3..f1c7b08ad 100644
--- a/test/results/stats/default/ospfv2_add_new_prefix.pcap.out
+++ b/test/results/stats/default/ospfv2_add_new_prefix.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ossfuzz_seed_fake_traces_1.pcapng.out b/test/results/stats/default/ossfuzz_seed_fake_traces_1.pcapng.out
index 5eff3ab9e..fc8ca8903 100644
--- a/test/results/stats/default/ossfuzz_seed_fake_traces_1.pcapng.out
+++ b/test/results/stats/default/ossfuzz_seed_fake_traces_1.pcapng.out
@@ -1,14 +1,14 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:59
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:49186
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:48780
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:2613
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:28
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:7
@@ -37,7 +37,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
@@ -52,7 +52,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interva
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:2
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
@@ -88,10 +88,11 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:6
@@ -109,9 +110,9 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:10
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
diff --git a/test/results/stats/default/ossfuzz_seed_fake_traces_2.pcapng.out b/test/results/stats/default/ossfuzz_seed_fake_traces_2.pcapng.out
index 845ca3e54..ddc5c32a2 100644
--- a/test/results/stats/default/ossfuzz_seed_fake_traces_2.pcapng.out
+++ b/test/results/stats/default/ossfuzz_seed_fake_traces_2.pcapng.out
@@ -1,19 +1,19 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:39
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:28634
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:48
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:36736
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:331
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:377
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:13674
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:15230
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:19
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:24
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
@@ -36,7 +36,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
@@ -56,7 +56,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
@@ -88,35 +88,36 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:5
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
diff --git a/test/results/stats/default/ossfuzz_seed_fake_traces_3.pcapng.out b/test/results/stats/default/ossfuzz_seed_fake_traces_3.pcapng.out
index f1de73e56..696e6bbc4 100644
--- a/test/results/stats/default/ossfuzz_seed_fake_traces_3.pcapng.out
+++ b/test/results/stats/default/ossfuzz_seed_fake_traces_3.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ossfuzz_seed_fake_traces_4.pcapng.out b/test/results/stats/default/ossfuzz_seed_fake_traces_4.pcapng.out
index 112946594..f0bd1fb4c 100644
--- a/test/results/stats/default/ossfuzz_seed_fake_traces_4.pcapng.out
+++ b/test/results/stats/default/ossfuzz_seed_fake_traces_4.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/pgm.pcap.out b/test/results/stats/default/pgm.pcap.out
index 5f32a09bf..0cf07148c 100644
--- a/test/results/stats/default/pgm.pcap.out
+++ b/test/results/stats/default/pgm.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/pgsql.pcap.out b/test/results/stats/default/pgsql.pcap.out
index 0500df74c..6816c020f 100644
--- a/test/results/stats/default/pgsql.pcap.out
+++ b/test/results/stats/default/pgsql.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/pia.pcap.out b/test/results/stats/default/pia.pcap.out
new file mode 100644
index 000000000..d9ff1d60f
--- /dev/null
+++ b/test/results/stats/default/pia.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12162
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:610
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:2622
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/pim.pcap.out b/test/results/stats/default/pim.pcap.out
index 929c3bbf7..900efcfba 100644
--- a/test/results/stats/default/pim.pcap.out
+++ b/test/results/stats/default/pim.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/pinterest.pcap.out b/test/results/stats/default/pinterest.pcap.out
index 0b776baa9..a69446348 100644
--- a/test/results/stats/default/pinterest.pcap.out
+++ b/test/results/stats/default/pinterest.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:297
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:295069
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:297364
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:37
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:32
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:21
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/pluralsight.pcap.out b/test/results/stats/default/pluralsight.pcap.out
index db5abaa14..408f50ad7 100644
--- a/test/results/stats/default/pluralsight.pcap.out
+++ b/test/results/stats/default/pluralsight.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:59
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:72624
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:73344
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:6
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/pop3.pcap.out b/test/results/stats/default/pop3.pcap.out
index 426aef269..c3373c721 100644
--- a/test/results/stats/default/pop3.pcap.out
+++ b/test/results/stats/default/pop3.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/pop3_stls.pcap.out b/test/results/stats/default/pop3_stls.pcap.out
index cc661e602..4ac1189eb 100644
--- a/test/results/stats/default/pop3_stls.pcap.out
+++ b/test/results/stats/default/pop3_stls.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/pops.pcapng.out b/test/results/stats/default/pops.pcapng.out
index e527b1d70..b94c57239 100644
--- a/test/results/stats/default/pops.pcapng.out
+++ b/test/results/stats/default/pops.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/pps.pcap.out b/test/results/stats/default/pps.pcap.out
index 5fcf04695..6a751a35b 100644
--- a/test/results/stats/default/pps.pcap.out
+++ b/test/results/stats/default/pps.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:701
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:729380
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:728821
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:107
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:105
@@ -9,8 +9,8 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:76
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:49
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:29
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:248444
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:241859
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:122772
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:232827
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:47
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:288
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:76
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:11
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:33
diff --git a/test/results/stats/default/pptp.pcap.out b/test/results/stats/default/pptp.pcap.out
index 1b9295f30..7a32ee2a9 100644
--- a/test/results/stats/default/pptp.pcap.out
+++ b/test/results/stats/default/pptp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/profinet-io-le.pcap.out b/test/results/stats/default/profinet-io-le.pcap.out
new file mode 100644
index 000000000..96544d05f
--- /dev/null
+++ b/test/results/stats/default/profinet-io-le.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:8
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:6548
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:164
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:268
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/protobuf.pcap.out b/test/results/stats/default/protobuf.pcap.out
index 92868e55e..bf0ad1e47 100644
--- a/test/results/stats/default/protobuf.pcap.out
+++ b/test/results/stats/default/protobuf.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/protonvpn.pcap.out b/test/results/stats/default/protonvpn.pcap.out
index dd0b3e8fe..31bf38187 100644
--- a/test/results/stats/default/protonvpn.pcap.out
+++ b/test/results/stats/default/protonvpn.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:25
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:19741
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:19868
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/psiphon3.pcap.out b/test/results/stats/default/psiphon3.pcap.out
index 573cc973f..c687357a2 100644
--- a/test/results/stats/default/psiphon3.pcap.out
+++ b/test/results/stats/default/psiphon3.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:14
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13496
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13631
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
diff --git a/test/results/stats/default/ptpv2.pcap.out b/test/results/stats/default/ptpv2.pcap.out
new file mode 100644
index 000000000..dcf1bc917
--- /dev/null
+++ b/test/results/stats/default/ptpv2.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:23
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:16991
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:796
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/punycode-idn.pcap.out b/test/results/stats/default/punycode-idn.pcap.out
index 9307f20d2..8d5756f35 100644
--- a/test/results/stats/default/punycode-idn.pcap.out
+++ b/test/results/stats/default/punycode-idn.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic-23.pcap.out b/test/results/stats/default/quic-23.pcap.out
index 5b4d2e86e..3bf65bc45 100644
--- a/test/results/stats/default/quic-23.pcap.out
+++ b/test/results/stats/default/quic-23.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13120
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13165
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic-24.pcap.out b/test/results/stats/default/quic-24.pcap.out
index dd6003a58..49f2f661e 100644
--- a/test/results/stats/default/quic-24.pcap.out
+++ b/test/results/stats/default/quic-24.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12828
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12873
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic-27.pcap.out b/test/results/stats/default/quic-27.pcap.out
index c26349a7f..2b9aeb9da 100644
--- a/test/results/stats/default/quic-27.pcap.out
+++ b/test/results/stats/default/quic-27.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:16794
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:16839
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic-28.pcap.out b/test/results/stats/default/quic-28.pcap.out
index e1f1b70fb..987fbbb63 100644
--- a/test/results/stats/default/quic-28.pcap.out
+++ b/test/results/stats/default/quic-28.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13222
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13267
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic-29.pcap.out b/test/results/stats/default/quic-29.pcap.out
index 6680e5caa..08a7e07b4 100644
--- a/test/results/stats/default/quic-29.pcap.out
+++ b/test/results/stats/default/quic-29.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12821
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12866
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic-33.pcapng.out b/test/results/stats/default/quic-33.pcapng.out
index 77d154a28..341831e66 100644
--- a/test/results/stats/default/quic-33.pcapng.out
+++ b/test/results/stats/default/quic-33.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14699
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14744
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
diff --git a/test/results/stats/default/quic-34.pcap.out b/test/results/stats/default/quic-34.pcap.out
index 76d7451ef..21c1288e0 100644
--- a/test/results/stats/default/quic-34.pcap.out
+++ b/test/results/stats/default/quic-34.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:10
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14077
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14122
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
diff --git a/test/results/stats/default/quic-forcing-vn-with-data.pcapng.out b/test/results/stats/default/quic-forcing-vn-with-data.pcapng.out
index 20744c5f7..fe5036be2 100644
--- a/test/results/stats/default/quic-forcing-vn-with-data.pcapng.out
+++ b/test/results/stats/default/quic-forcing-vn-with-data.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14593
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14638
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
diff --git a/test/results/stats/default/quic-fuzz-overflow.pcapng.out b/test/results/stats/default/quic-fuzz-overflow.pcapng.out
index a671c01d0..6b6db55f6 100644
--- a/test/results/stats/default/quic-fuzz-overflow.pcapng.out
+++ b/test/results/stats/default/quic-fuzz-overflow.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/quic-mvfst-22.pcap.out b/test/results/stats/default/quic-mvfst-22.pcap.out
index 1ca420b4f..48a286e62 100644
--- a/test/results/stats/default/quic-mvfst-22.pcap.out
+++ b/test/results/stats/default/quic-mvfst-22.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15238
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15283
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic-mvfst-22_decryption_error.pcap.out b/test/results/stats/default/quic-mvfst-22_decryption_error.pcap.out
index 31645000b..aca6894df 100644
--- a/test/results/stats/default/quic-mvfst-22_decryption_error.pcap.out
+++ b/test/results/stats/default/quic-mvfst-22_decryption_error.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic-mvfst-27.pcapng.out b/test/results/stats/default/quic-mvfst-27.pcapng.out
index d9d394b53..54c308e74 100644
--- a/test/results/stats/default/quic-mvfst-27.pcapng.out
+++ b/test/results/stats/default/quic-mvfst-27.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:10
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15533
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15578
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic-mvfst-exp.pcap.out b/test/results/stats/default/quic-mvfst-exp.pcap.out
index 90b973682..fdf98ea50 100644
--- a/test/results/stats/default/quic-mvfst-exp.pcap.out
+++ b/test/results/stats/default/quic-mvfst-exp.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15307
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15352
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic-v2.pcapng.out b/test/results/stats/default/quic-v2.pcapng.out
index 05081d317..fd2362e01 100644
--- a/test/results/stats/default/quic-v2.pcapng.out
+++ b/test/results/stats/default/quic-v2.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14490
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14508
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/quic.pcap.out b/test/results/stats/default/quic.pcap.out
index a08a4a4ca..d9d73488f 100644
--- a/test/results/stats/default/quic.pcap.out
+++ b/test/results/stats/default/quic.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/quic046.pcap.out b/test/results/stats/default/quic046.pcap.out
index 8697b46d3..34f23714f 100644
--- a/test/results/stats/default/quic046.pcap.out
+++ b/test/results/stats/default/quic046.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic_0RTT.pcap.out b/test/results/stats/default/quic_0RTT.pcap.out
index d986be26c..701b82c77 100644
--- a/test/results/stats/default/quic_0RTT.pcap.out
+++ b/test/results/stats/default/quic_0RTT.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:17
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:20045
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:20108
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/quic_cc_ack.pcapng.out b/test/results/stats/default/quic_cc_ack.pcapng.out
index 8bd90be93..3a6c4ee0b 100644
--- a/test/results/stats/default/quic_cc_ack.pcapng.out
+++ b/test/results/stats/default/quic_cc_ack.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic_crypto_aes_auth_size.pcap.out b/test/results/stats/default/quic_crypto_aes_auth_size.pcap.out
index 77bdd13e4..bb9f8d666 100644
--- a/test/results/stats/default/quic_crypto_aes_auth_size.pcap.out
+++ b/test/results/stats/default/quic_crypto_aes_auth_size.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12747
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12783
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic_frags_ch_in_multiple_packets.pcapng.out b/test/results/stats/default/quic_frags_ch_in_multiple_packets.pcapng.out
index 5f0d84c26..a98f5d1f6 100644
--- a/test/results/stats/default/quic_frags_ch_in_multiple_packets.pcapng.out
+++ b/test/results/stats/default/quic_frags_ch_in_multiple_packets.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14528
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14573
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
diff --git a/test/results/stats/default/quic_frags_ch_out_of_order_same_packet_craziness.pcapng.out b/test/results/stats/default/quic_frags_ch_out_of_order_same_packet_craziness.pcapng.out
index c4a5b05e9..c21d229e3 100644
--- a/test/results/stats/default/quic_frags_ch_out_of_order_same_packet_craziness.pcapng.out
+++ b/test/results/stats/default/quic_frags_ch_out_of_order_same_packet_craziness.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:667
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:936691
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:941776
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:113
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:113
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:110
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic_frags_different_dcid.pcapng.out b/test/results/stats/default/quic_frags_different_dcid.pcapng.out
new file mode 100644
index 000000000..23774eefa
--- /dev/null
+++ b/test/results/stats/default/quic_frags_different_dcid.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13588
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:2500
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:1200
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/quic_interop_V.pcapng.out b/test/results/stats/default/quic_interop_V.pcapng.out
index b7d2a914e..17c9d33dd 100644
--- a/test/results/stats/default/quic_interop_V.pcapng.out
+++ b/test/results/stats/default/quic_interop_V.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:77
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:30
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:68
diff --git a/test/results/stats/default/quic_q39.pcap.out b/test/results/stats/default/quic_q39.pcap.out
index a9674de58..49b5b2006 100644
--- a/test/results/stats/default/quic_q39.pcap.out
+++ b/test/results/stats/default/quic_q39.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic_q43.pcap.out b/test/results/stats/default/quic_q43.pcap.out
index b7ce2bf56..8cc849903 100644
--- a/test/results/stats/default/quic_q43.pcap.out
+++ b/test/results/stats/default/quic_q43.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic_q46.pcap.out b/test/results/stats/default/quic_q46.pcap.out
index 88dcfb0cb..766350d5c 100644
--- a/test/results/stats/default/quic_q46.pcap.out
+++ b/test/results/stats/default/quic_q46.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic_q46_b.pcap.out b/test/results/stats/default/quic_q46_b.pcap.out
index 97abb5076..19759cbf3 100644
--- a/test/results/stats/default/quic_q46_b.pcap.out
+++ b/test/results/stats/default/quic_q46_b.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic_q50.pcap.out b/test/results/stats/default/quic_q50.pcap.out
index 4158f9496..117dd7238 100644
--- a/test/results/stats/default/quic_q50.pcap.out
+++ b/test/results/stats/default/quic_q50.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic_t50.pcap.out b/test/results/stats/default/quic_t50.pcap.out
index 3d13a30d9..99f20aa1b 100644
--- a/test/results/stats/default/quic_t50.pcap.out
+++ b/test/results/stats/default/quic_t50.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15329
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15374
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quic_t51.pcap.out b/test/results/stats/default/quic_t51.pcap.out
index ad1745837..41213fe2b 100644
--- a/test/results/stats/default/quic_t51.pcap.out
+++ b/test/results/stats/default/quic_t51.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:16680
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:16725
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/quickplay.pcap.out b/test/results/stats/default/quickplay.pcap.out
index 8bf4622a6..d8f08452e 100644
--- a/test/results/stats/default/quickplay.pcap.out
+++ b/test/results/stats/default/quickplay.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:21
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:11
diff --git a/test/results/stats/default/radius_false_positive.pcapng.out b/test/results/stats/default/radius_false_positive.pcapng.out
index e4f0954e1..a6368f820 100644
--- a/test/results/stats/default/radius_false_positive.pcapng.out
+++ b/test/results/stats/default/radius_false_positive.pcapng.out
@@ -1,12 +1,12 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:11541
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:11590
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:6859
@@ -36,7 +36,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
@@ -49,7 +49,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
@@ -88,10 +88,11 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
@@ -109,8 +110,8 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
diff --git a/test/results/stats/default/radmin3.pcapng.out b/test/results/stats/default/radmin3.pcapng.out
new file mode 100644
index 000000000..19b6c6919
--- /dev/null
+++ b/test/results/stats/default/radmin3.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:19
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13302
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:24
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:60
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/raft.pcap.out b/test/results/stats/default/raft.pcap.out
new file mode 100644
index 000000000..51fd94283
--- /dev/null
+++ b/test/results/stats/default/raft.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:21
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:17034
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:2000
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/raknet.pcap.out b/test/results/stats/default/raknet.pcap.out
index 258da2719..027ee8dad 100644
--- a/test/results/stats/default/raknet.pcap.out
+++ b/test/results/stats/default/raknet.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:12
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/rdp.pcap.out b/test/results/stats/default/rdp.pcap.out
index 7c7e1e42f..b67b447df 100644
--- a/test/results/stats/default/rdp.pcap.out
+++ b/test/results/stats/default/rdp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/rdp2.pcap.out b/test/results/stats/default/rdp2.pcap.out
index cf16ae266..c00a29cfc 100644
--- a/test/results/stats/default/rdp2.pcap.out
+++ b/test/results/stats/default/rdp2.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/rdp3.pcap.out b/test/results/stats/default/rdp3.pcap.out
new file mode 100644
index 000000000..3cf87f445
--- /dev/null
+++ b/test/results/stats/default/rdp3.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:7555
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:1629
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:862
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/reasm_crash_anon.pcapng.out b/test/results/stats/default/reasm_crash_anon.pcapng.out
index 2478be02e..0da2035c8 100644
--- a/test/results/stats/default/reasm_crash_anon.pcapng.out
+++ b/test/results/stats/default/reasm_crash_anon.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/reasm_segv_anon.pcapng.out b/test/results/stats/default/reasm_segv_anon.pcapng.out
index 91167b4f3..bf6566c68 100644
--- a/test/results/stats/default/reasm_segv_anon.pcapng.out
+++ b/test/results/stats/default/reasm_segv_anon.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/reddit.pcap.out b/test/results/stats/default/reddit.pcap.out
index 14b719176..0654dfa01 100644
--- a/test/results/stats/default/reddit.pcap.out
+++ b/test/results/stats/default/reddit.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:582
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:557892
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:564327
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:60
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:23
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:37
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:59
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/resp.pcap.out b/test/results/stats/default/resp.pcap.out
new file mode 100644
index 000000000..f9da1f907
--- /dev/null
+++ b/test/results/stats/default/resp.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9530
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:96
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:90212
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/riot.pcapng.out b/test/results/stats/default/riot.pcapng.out
index ef4ce5d48..5625a46c0 100644
--- a/test/results/stats/default/riot.pcapng.out
+++ b/test/results/stats/default/riot.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:18
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:25207
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:25234
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/riotgames.pcap.out b/test/results/stats/default/riotgames.pcap.out
index eabed0be8..29cb67162 100644
--- a/test/results/stats/default/riotgames.pcap.out
+++ b/test/results/stats/default/riotgames.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/rmcp.pcap.out b/test/results/stats/default/rmcp.pcap.out
index 46cc1d0ab..54d8c21d6 100644
--- a/test/results/stats/default/rmcp.pcap.out
+++ b/test/results/stats/default/rmcp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/roblox.pcapng.out b/test/results/stats/default/roblox.pcapng.out
index a5d67f9d6..9e8e39f5e 100644
--- a/test/results/stats/default/roblox.pcapng.out
+++ b/test/results/stats/default/roblox.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:39
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:43070
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:43160
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/roughtime.pcap.out b/test/results/stats/default/roughtime.pcap.out
new file mode 100644
index 000000000..755cca3cb
--- /dev/null
+++ b/test/results/stats/default/roughtime.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:20
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:19256
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:2768
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/rsh-syslog-false-positive.pcap.out b/test/results/stats/default/rsh-syslog-false-positive.pcap.out
index ac54a1cd4..f29dcf8c1 100644
--- a/test/results/stats/default/rsh-syslog-false-positive.pcap.out
+++ b/test/results/stats/default/rsh-syslog-false-positive.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/rsh.pcap.out b/test/results/stats/default/rsh.pcap.out
index d09773802..943fc6b49 100644
--- a/test/results/stats/default/rsh.pcap.out
+++ b/test/results/stats/default/rsh.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/rsync.pcap.out b/test/results/stats/default/rsync.pcap.out
index c3912076a..4f5955b7f 100644
--- a/test/results/stats/default/rsync.pcap.out
+++ b/test/results/stats/default/rsync.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/rtcp_multiple_pkts_in_the_same_datagram.pcap.out b/test/results/stats/default/rtcp_multiple_pkts_in_the_same_datagram.pcap.out
index 6f58c580f..11e9db2b1 100644
--- a/test/results/stats/default/rtcp_multiple_pkts_in_the_same_datagram.pcap.out
+++ b/test/results/stats/default/rtcp_multiple_pkts_in_the_same_datagram.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/rtmp.pcap.out b/test/results/stats/default/rtmp.pcap.out
index d82f55567..307e303ca 100644
--- a/test/results/stats/default/rtmp.pcap.out
+++ b/test/results/stats/default/rtmp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/rtp.pcapng.out b/test/results/stats/default/rtp.pcapng.out
index a590c449b..2cadd89fe 100644
--- a/test/results/stats/default/rtp.pcapng.out
+++ b/test/results/stats/default/rtp.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/zcash.pcap.out b/test/results/stats/default/rtps.pcap.out
index 44aa2ee45..def0c916e 100644
--- a/test/results/stats/default/zcash.pcap.out
+++ b/test/results/stats/default/rtps.pcap.out
@@ -1,23 +1,23 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:10913
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:19
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:20358
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:8
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:6299
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:4723
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:21164
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
@@ -36,9 +36,9 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
@@ -60,7 +60,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interva
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
@@ -74,7 +74,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
@@ -92,9 +92,10 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
@@ -103,8 +104,8 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
@@ -116,7 +117,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
@@ -133,7 +134,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
diff --git a/test/results/stats/default/rtsp.pcap.out b/test/results/stats/default/rtsp.pcap.out
index 661b703fe..1da2427d9 100644
--- a/test/results/stats/default/rtsp.pcap.out
+++ b/test/results/stats/default/rtsp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:7
diff --git a/test/results/stats/default/rtsp_setup_http.pcapng.out b/test/results/stats/default/rtsp_setup_http.pcapng.out
index 309c2a18c..f43ef2e9b 100644
--- a/test/results/stats/default/rtsp_setup_http.pcapng.out
+++ b/test/results/stats/default/rtsp_setup_http.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/rx.pcap.out b/test/results/stats/default/rx.pcap.out
index 8002a7018..3669883a4 100644
--- a/test/results/stats/default/rx.pcap.out
+++ b/test/results/stats/default/rx.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/s7comm-plus.pcap.out b/test/results/stats/default/s7comm-plus.pcap.out
new file mode 100644
index 000000000..38a8c71b4
--- /dev/null
+++ b/test/results/stats/default/s7comm-plus.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9492
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:3254
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:2655
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/s7comm.pcap.out b/test/results/stats/default/s7comm.pcap.out
index 43acd7ffc..9ab0a69c1 100644
--- a/test/results/stats/default/s7comm.pcap.out
+++ b/test/results/stats/default/s7comm.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9509
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9517
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -58,7 +58,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
@@ -70,7 +70,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/safari.pcap.out b/test/results/stats/default/safari.pcap.out
index 3c4788dc3..b12ed3cdf 100644
--- a/test/results/stats/default/safari.pcap.out
+++ b/test/results/stats/default/safari.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:69
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:59056
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:59776
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:7
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/salesforce.pcap.out b/test/results/stats/default/salesforce.pcap.out
index 6f93f2c53..0114e1869 100644
--- a/test/results/stats/default/salesforce.pcap.out
+++ b/test/results/stats/default/salesforce.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:11151
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:11286
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/sccp_hw_conf_register.pcapng.out b/test/results/stats/default/sccp_hw_conf_register.pcapng.out
index 333898942..3169d3917 100644
--- a/test/results/stats/default/sccp_hw_conf_register.pcapng.out
+++ b/test/results/stats/default/sccp_hw_conf_register.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/sctp.cap.out b/test/results/stats/default/sctp.cap.out
index 26030fe4f..89357fa8b 100644
--- a/test/results/stats/default/sctp.cap.out
+++ b/test/results/stats/default/sctp.cap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/selfsigned.pcap.out b/test/results/stats/default/selfsigned.pcap.out
index 141725f46..ef6bdb706 100644
--- a/test/results/stats/default/selfsigned.pcap.out
+++ b/test/results/stats/default/selfsigned.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:10343
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:10433
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/sflow.pcap.out b/test/results/stats/default/sflow.pcap.out
index f52ff01c2..5c9fb82c0 100644
--- a/test/results/stats/default/sflow.pcap.out
+++ b/test/results/stats/default/sflow.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/shadowsocks.pcap.out b/test/results/stats/default/shadowsocks.pcap.out
index 066e909e1..b4320fea5 100644
--- a/test/results/stats/default/shadowsocks.pcap.out
+++ b/test/results/stats/default/shadowsocks.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/signal.pcap.out b/test/results/stats/default/signal.pcap.out
index 4ce83e8fb..2a968b146 100644
--- a/test/results/stats/default/signal.pcap.out
+++ b/test/results/stats/default/signal.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:175
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:159282
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:160812
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:19
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:10
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:19
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/simple-dnscrypt.pcap.out b/test/results/stats/default/simple-dnscrypt.pcap.out
index 47e611b79..ac8a67ea7 100644
--- a/test/results/stats/default/simple-dnscrypt.pcap.out
+++ b/test/results/stats/default/simple-dnscrypt.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:45
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:41566
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:42106
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:4
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/sip.pcap.out b/test/results/stats/default/sip.pcap.out
index 5cb84b4e1..fa5e4c8dc 100644
--- a/test/results/stats/default/sip.pcap.out
+++ b/test/results/stats/default/sip.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/sip_hello.pcapng.out b/test/results/stats/default/sip_hello.pcapng.out
index 38175354a..0d454be8c 100644
--- a/test/results/stats/default/sip_hello.pcapng.out
+++ b/test/results/stats/default/sip_hello.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/sites.pcapng.out b/test/results/stats/default/sites.pcapng.out
index 42a0cf417..0d92e32d0 100644
--- a/test/results/stats/default/sites.pcapng.out
+++ b/test/results/stats/default/sites.pcapng.out
@@ -1,23 +1,23 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:403
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:453218
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:47
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:422
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:474613
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:49
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:7
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:40
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:42
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:4
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:43
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:49
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:45
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:51
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:31753
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:206418
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:32787
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:210933
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:196
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:206
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:13
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
@@ -36,8 +36,8 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:9
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:12
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:21
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:13
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:22
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
@@ -49,10 +49,10 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:8
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:9
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
@@ -88,28 +88,29 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:42
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:44
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:47
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:49
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:44
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:46
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:47
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:43
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:49
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:45
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
@@ -119,14 +120,14 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
diff --git a/test/results/stats/default/skinny.pcap.out b/test/results/stats/default/skinny.pcap.out
index 4f09b8d12..84b26b064 100644
--- a/test/results/stats/default/skinny.pcap.out
+++ b/test/results/stats/default/skinny.pcap.out
@@ -1,19 +1,19 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:76
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:69389
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:9
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:61
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:50803
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:9
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:9
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:373748
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:124964
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:19224
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:7540
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:39
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:35
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
@@ -36,7 +36,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:9
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
@@ -54,11 +54,11 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interv
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
@@ -88,10 +88,11 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:9
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
@@ -100,16 +101,16 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:9
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:5
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:9
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:9
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
diff --git a/test/results/stats/default/skype-conference-call.pcap.out b/test/results/stats/default/skype-conference-call.pcap.out
index 07afb6426..43b1dde7f 100644
--- a/test/results/stats/default/skype-conference-call.pcap.out
+++ b/test/results/stats/default/skype-conference-call.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/skype.pcap.out b/test/results/stats/default/skype.pcap.out
index f2c641818..2f1109223 100644
--- a/test/results/stats/default/skype.pcap.out
+++ b/test/results/stats/default/skype.pcap.out
@@ -1,16 +1,16 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:2154
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:1762881
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:1762949
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:293
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:92
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:201
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:90
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:203
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:385
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:28
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:206
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:35
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:59
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:185111
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:259084
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:121827
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:48566
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:36
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:844
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:206
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:32
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
diff --git a/test/results/stats/default/skype_no_unknown.pcap.out b/test/results/stats/default/skype_no_unknown.pcap.out
index 4ea9d856d..d51ac0d4f 100644
--- a/test/results/stats/default/skype_no_unknown.pcap.out
+++ b/test/results/stats/default/skype_no_unknown.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:1606
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:1289082
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:1289003
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:267
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:61
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:206
@@ -9,8 +9,8 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:22
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:201
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:27
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:44
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:156712
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:202960
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:151088
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:79003
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:32
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:677
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:201
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:25
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:5
diff --git a/test/results/stats/default/skype_udp.pcap.out b/test/results/stats/default/skype_udp.pcap.out
index 10d4914ea..2e88598c7 100644
--- a/test/results/stats/default/skype_udp.pcap.out
+++ b/test/results/stats/default/skype_udp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/smb_deletefile.pcap.out b/test/results/stats/default/smb_deletefile.pcap.out
index c47d43c4a..aeac0e645 100644
--- a/test/results/stats/default/smb_deletefile.pcap.out
+++ b/test/results/stats/default/smb_deletefile.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/smb_frags.pcap.out b/test/results/stats/default/smb_frags.pcap.out
index ccd762465..a4f239e68 100644
--- a/test/results/stats/default/smb_frags.pcap.out
+++ b/test/results/stats/default/smb_frags.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/smbv1.pcap.out b/test/results/stats/default/smbv1.pcap.out
index 617affaa0..ab610165b 100644
--- a/test/results/stats/default/smbv1.pcap.out
+++ b/test/results/stats/default/smbv1.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/smpp_in_general.pcap.out b/test/results/stats/default/smpp_in_general.pcap.out
index 1c3286ee6..4568e38f8 100644
--- a/test/results/stats/default/smpp_in_general.pcap.out
+++ b/test/results/stats/default/smpp_in_general.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/smtp-starttls.pcap.out b/test/results/stats/default/smtp-starttls.pcap.out
index 3ba8449d5..909bec3f7 100644
--- a/test/results/stats/default/smtp-starttls.pcap.out
+++ b/test/results/stats/default/smtp-starttls.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/smtp.pcap.out b/test/results/stats/default/smtp.pcap.out
index 4beaaaeaf..9cabebc69 100644
--- a/test/results/stats/default/smtp.pcap.out
+++ b/test/results/stats/default/smtp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/smtps.pcapng.out b/test/results/stats/default/smtps.pcapng.out
index 505fb9f96..ae1a7bff8 100644
--- a/test/results/stats/default/smtps.pcapng.out
+++ b/test/results/stats/default/smtps.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/snapchat.pcap.out b/test/results/stats/default/snapchat.pcap.out
index 55917dd15..70b61202a 100644
--- a/test/results/stats/default/snapchat.pcap.out
+++ b/test/results/stats/default/snapchat.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:30
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:24739
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:25009
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/snapchat_call.pcapng.out b/test/results/stats/default/snapchat_call.pcapng.out
index dfc84e444..af22aed37 100644
--- a/test/results/stats/default/snapchat_call.pcapng.out
+++ b/test/results/stats/default/snapchat_call.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/snapchat_call_v1.pcapng.out b/test/results/stats/default/snapchat_call_v1.pcapng.out
index ef1ea144f..c186a1908 100644
--- a/test/results/stats/default/snapchat_call_v1.pcapng.out
+++ b/test/results/stats/default/snapchat_call_v1.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:18173
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:18209
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/snmp.pcap.out b/test/results/stats/default/snmp.pcap.out
index 1241d0291..c9edb7bea 100644
--- a/test/results/stats/default/snmp.pcap.out
+++ b/test/results/stats/default/snmp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:17
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/soap.pcap.out b/test/results/stats/default/soap.pcap.out
index 90ceb16af..ffbd92585 100644
--- a/test/results/stats/default/soap.pcap.out
+++ b/test/results/stats/default/soap.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/socks.pcap.out b/test/results/stats/default/socks.pcap.out
index cd5cd7971..2bcc989d9 100644
--- a/test/results/stats/default/socks.pcap.out
+++ b/test/results/stats/default/socks.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/softether.pcap.out b/test/results/stats/default/softether.pcap.out
index 25b80eb09..8ecd4f210 100644
--- a/test/results/stats/default/softether.pcap.out
+++ b/test/results/stats/default/softether.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/someip-tp.pcap.out b/test/results/stats/default/someip-tp.pcap.out
index 7c039d913..11ccb63d9 100644
--- a/test/results/stats/default/someip-tp.pcap.out
+++ b/test/results/stats/default/someip-tp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/someip-udp-method-call.pcapng.out b/test/results/stats/default/someip-udp-method-call.pcapng.out
index ae0d4ff01..5cda36a10 100644
--- a/test/results/stats/default/someip-udp-method-call.pcapng.out
+++ b/test/results/stats/default/someip-udp-method-call.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/someip_sd_sample.pcap.out b/test/results/stats/default/someip_sd_sample.pcap.out
index 46a3a6193..d0e5aedce 100644
--- a/test/results/stats/default/someip_sd_sample.pcap.out
+++ b/test/results/stats/default/someip_sd_sample.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/source_engine.pcap.out b/test/results/stats/default/source_engine.pcap.out
index f825fcd1d..db9661b2f 100644
--- a/test/results/stats/default/source_engine.pcap.out
+++ b/test/results/stats/default/source_engine.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:17
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/spotify_tcp.pcap.out b/test/results/stats/default/spotify_tcp.pcap.out
new file mode 100644
index 000000000..42673b903
--- /dev/null
+++ b/test/results/stats/default/spotify_tcp.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:6892
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:792
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:2002
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/sql_injection.pcap.out b/test/results/stats/default/sql_injection.pcap.out
index 4b791b8de..63c3e76ec 100644
--- a/test/results/stats/default/sql_injection.pcap.out
+++ b/test/results/stats/default/sql_injection.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/srvloc-v1.pcapng.out b/test/results/stats/default/srvloc-v1.pcapng.out
index 095979226..f29b74e4a 100644
--- a/test/results/stats/default/srvloc-v1.pcapng.out
+++ b/test/results/stats/default/srvloc-v1.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/srvloc.pcap.out b/test/results/stats/default/srvloc.pcap.out
index d030f2c47..24e865ed3 100644
--- a/test/results/stats/default/srvloc.pcap.out
+++ b/test/results/stats/default/srvloc.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:621
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ssdp-m-search-ua.pcap.out b/test/results/stats/default/ssdp-m-search-ua.pcap.out
index 0e70914f9..a70cfbea0 100644
--- a/test/results/stats/default/ssdp-m-search-ua.pcap.out
+++ b/test/results/stats/default/ssdp-m-search-ua.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ssdp-m-search.pcap.out b/test/results/stats/default/ssdp-m-search.pcap.out
index 461736fa2..55ccf3cf3 100644
--- a/test/results/stats/default/ssdp-m-search.pcap.out
+++ b/test/results/stats/default/ssdp-m-search.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ssh.pcap.out b/test/results/stats/default/ssh.pcap.out
index dbd94c0fe..0d66de842 100644
--- a/test/results/stats/default/ssh.pcap.out
+++ b/test/results/stats/default/ssh.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/ssl-cert-name-mismatch.pcap.out b/test/results/stats/default/ssl-cert-name-mismatch.pcap.out
index e352f7bdd..26cfdff7c 100644
--- a/test/results/stats/default/ssl-cert-name-mismatch.pcap.out
+++ b/test/results/stats/default/ssl-cert-name-mismatch.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:10770
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:10905
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/starcraft_battle.pcap.out b/test/results/stats/default/starcraft_battle.pcap.out
index e04a06968..e58ba584b 100644
--- a/test/results/stats/default/starcraft_battle.pcap.out
+++ b/test/results/stats/default/starcraft_battle.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:39
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/steam.pcapng.out b/test/results/stats/default/steam.pcapng.out
new file mode 100644
index 000000000..4c9902d98
--- /dev/null
+++ b/test/results/stats/default/steam.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:59
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:50694
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:5134
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:4588
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:31
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/stomp.pcapng.out b/test/results/stats/default/stomp.pcapng.out
new file mode 100644
index 000000000..07f2f6254
--- /dev/null
+++ b/test/results/stats/default/stomp.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:7375
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:195
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:291
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/stun.pcap.out b/test/results/stats/default/stun.pcap.out
index d4a5289fe..9c625d8ff 100644
--- a/test/results/stats/default/stun.pcap.out
+++ b/test/results/stats/default/stun.pcap.out
@@ -1,23 +1,23 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:71
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:60646
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:82
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:70384
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:7
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:8
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:8902
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:9008
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:9436
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:9072
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:31
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:35
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
@@ -36,7 +36,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
@@ -58,7 +58,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
@@ -88,35 +88,36 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:2
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:7
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:8
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
@@ -135,7 +136,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
@@ -157,7 +158,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
diff --git a/test/results/stats/default/stun_classic.pcap.out b/test/results/stats/default/stun_classic.pcap.out
index 2395b5ea1..b6a8baf56 100644
--- a/test/results/stats/default/stun_classic.pcap.out
+++ b/test/results/stats/default/stun_classic.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/stun_dtls_rtp.pcapng.out b/test/results/stats/default/stun_dtls_rtp.pcapng.out
new file mode 100644
index 000000000..418d888d9
--- /dev/null
+++ b/test/results/stats/default/stun_dtls_rtp.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12220
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:3152
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:3623
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/stun_dtls_rtp_unidir.pcapng.out b/test/results/stats/default/stun_dtls_rtp_unidir.pcapng.out
new file mode 100644
index 000000000..dce812209
--- /dev/null
+++ b/test/results/stats/default/stun_dtls_rtp_unidir.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:21
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:17358
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:8552
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:10
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/stun_dtls_unidirectional_client.pcap.out b/test/results/stats/default/stun_dtls_unidirectional_client.pcap.out
index b28fb2df0..9187cf975 100644
--- a/test/results/stats/default/stun_dtls_unidirectional_client.pcap.out
+++ b/test/results/stats/default/stun_dtls_unidirectional_client.pcap.out
@@ -1,5 +1,5 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12640
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:14
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13983
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -7,7 +7,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:1456
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
@@ -92,9 +92,10 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
@@ -116,7 +117,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
@@ -126,7 +127,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
@@ -135,7 +136,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
diff --git a/test/results/stats/default/stun_dtls_unidirectional_server.pcap.out b/test/results/stats/default/stun_dtls_unidirectional_server.pcap.out
index 988c4b67d..aec2eeec0 100644
--- a/test/results/stats/default/stun_dtls_unidirectional_server.pcap.out
+++ b/test/results/stats/default/stun_dtls_unidirectional_server.pcap.out
@@ -1,5 +1,5 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12367
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:14
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:13696
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -7,7 +7,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:1311
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
@@ -92,10 +92,11 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
@@ -116,8 +117,8 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:3
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
@@ -157,7 +158,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
diff --git a/test/results/stats/default/stun_google_meet.pcapng.out b/test/results/stats/default/stun_google_meet.pcapng.out
index 8de3c6513..17f46c275 100644
--- a/test/results/stats/default/stun_google_meet.pcapng.out
+++ b/test/results/stats/default/stun_google_meet.pcapng.out
@@ -1,23 +1,23 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:55
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:47149
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:71
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:63380
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:6
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:10410
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:14309
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:13243
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:43190
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:29
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:34
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
@@ -36,7 +36,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
@@ -54,7 +54,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interv
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
@@ -88,35 +88,36 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:6
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:6
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:6
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
diff --git a/test/results/stats/default/stun_msteams_unidir.pcapng.out b/test/results/stats/default/stun_msteams_unidir.pcapng.out
index 8da4eaace..02f132aa9 100644
--- a/test/results/stats/default/stun_msteams_unidir.pcapng.out
+++ b/test/results/stats/default/stun_msteams_unidir.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/stun_signal.pcapng.out b/test/results/stats/default/stun_signal.pcapng.out
index 5d76ab860..fe220b725 100644
--- a/test/results/stats/default/stun_signal.pcapng.out
+++ b/test/results/stats/default/stun_signal.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:21
diff --git a/test/results/stats/default/stun_tcp_multiple_msgs_same_pkt.pcap.out b/test/results/stats/default/stun_tcp_multiple_msgs_same_pkt.pcap.out
index e2eaab886..d02119199 100644
--- a/test/results/stats/default/stun_tcp_multiple_msgs_same_pkt.pcap.out
+++ b/test/results/stats/default/stun_tcp_multiple_msgs_same_pkt.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/stun_wa_call.pcapng.out b/test/results/stats/default/stun_wa_call.pcapng.out
index c7e7fd89c..11cffa414 100644
--- a/test/results/stats/default/stun_wa_call.pcapng.out
+++ b/test/results/stats/default/stun_wa_call.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:11
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/stun_zoom.pcapng.out b/test/results/stats/default/stun_zoom.pcapng.out
index 8a45f0595..b7e0c85fd 100644
--- a/test/results/stats/default/stun_zoom.pcapng.out
+++ b/test/results/stats/default/stun_zoom.pcapng.out
@@ -1,5 +1,5 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:27
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:26524
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:28
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:27520
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
@@ -7,7 +7,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:2
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:4671
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:10647
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:6
@@ -116,7 +117,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:8
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
@@ -135,7 +136,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
diff --git a/test/results/stats/default/syncthing.pcap.out b/test/results/stats/default/syncthing.pcap.out
index 6e1c905d3..59265c431 100644
--- a/test/results/stats/default/syncthing.pcap.out
+++ b/test/results/stats/default/syncthing.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/synscan.pcap.out b/test/results/stats/default/synscan.pcap.out
index a816231ab..e9b59ecf1 100644
--- a/test/results/stats/default/synscan.pcap.out
+++ b/test/results/stats/default/synscan.pcap.out
@@ -1,14 +1,14 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:7996
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:6242867
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:6243795
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1994
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1989
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:124
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:136
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:1870
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:1858
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
@@ -110,8 +111,8 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1994
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:124
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:1870
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:136
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:1858
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
diff --git a/test/results/stats/default/syslog.pcap.out b/test/results/stats/default/syslog.pcap.out
index de85387a8..6bc59db1b 100644
--- a/test/results/stats/default/syslog.pcap.out
+++ b/test/results/stats/default/syslog.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:17
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/tailscale.pcap.out b/test/results/stats/default/tailscale.pcap.out
index f098a228b..46038a0ae 100644
--- a/test/results/stats/default/tailscale.pcap.out
+++ b/test/results/stats/default/tailscale.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/targusdataspeed_false_positives.pcap.out b/test/results/stats/default/targusdataspeed_false_positives.pcap.out
index 5dd39da84..641b5517c 100644
--- a/test/results/stats/default/targusdataspeed_false_positives.pcap.out
+++ b/test/results/stats/default/targusdataspeed_false_positives.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/tcp_scan.pcapng.out b/test/results/stats/default/tcp_scan.pcapng.out
index 4d5e78cee..934e32831 100644
--- a/test/results/stats/default/tcp_scan.pcapng.out
+++ b/test/results/stats/default/tcp_scan.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/teams.pcap.out b/test/results/stats/default/teams.pcap.out
index 4bd954161..ef9efa117 100644
--- a/test/results/stats/default/teams.pcap.out
+++ b/test/results/stats/default/teams.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:674
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:635401
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:638704
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:83
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:17
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:66
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:74
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:38
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:10
diff --git a/test/results/stats/default/teamspeak3.pcap.out b/test/results/stats/default/teamspeak3.pcap.out
index d9e93a8a8..629c5e071 100644
--- a/test/results/stats/default/teamspeak3.pcap.out
+++ b/test/results/stats/default/teamspeak3.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/teamviewer.pcap.out b/test/results/stats/default/teamviewer.pcap.out
index 47b4d1c6c..bb328a3cd 100644
--- a/test/results/stats/default/teamviewer.pcap.out
+++ b/test/results/stats/default/teamviewer.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/telegram.pcap.out b/test/results/stats/default/telegram.pcap.out
index 9832c3abc..47050c900 100644
--- a/test/results/stats/default/telegram.pcap.out
+++ b/test/results/stats/default/telegram.pcap.out
@@ -1,17 +1,17 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:340
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:291377
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:290994
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:48
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:48
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:46
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:45
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:14
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:159435
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:109098
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:163
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
@@ -36,7 +36,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:3
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:40
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:39
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
@@ -46,7 +46,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:2
@@ -88,13 +88,14 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:46
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:45
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:5
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
@@ -109,14 +110,14 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:48
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:46
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:45
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
diff --git a/test/results/stats/default/telegram_videocall.pcapng.out b/test/results/stats/default/telegram_videocall.pcapng.out
index 92937d2b4..1cb482569 100644
--- a/test/results/stats/default/telegram_videocall.pcapng.out
+++ b/test/results/stats/default/telegram_videocall.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:21
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:28
diff --git a/test/results/stats/default/telnet.pcap.out b/test/results/stats/default/telnet.pcap.out
index a758acfe0..f7797f19c 100644
--- a/test/results/stats/default/telnet.pcap.out
+++ b/test/results/stats/default/telnet.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/teredo.pcap.out b/test/results/stats/default/teredo.pcap.out
index a5bd419b7..cef8882b0 100644
--- a/test/results/stats/default/teredo.pcap.out
+++ b/test/results/stats/default/teredo.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tftp.pcap.out b/test/results/stats/default/tftp.pcap.out
index f250809f3..f0aeecb39 100644
--- a/test/results/stats/default/tftp.pcap.out
+++ b/test/results/stats/default/tftp.pcap.out
@@ -1,23 +1,23 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:41
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:35665
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:50
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:43163
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:2
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:24888
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:24961
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:1228
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:14
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:16
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
@@ -36,7 +36,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
@@ -48,7 +48,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
@@ -88,35 +88,36 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:7
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:9
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
diff --git a/test/results/stats/default/threema.pcap.out b/test/results/stats/default/threema.pcap.out
index 45c7d0ec8..8fbd140b0 100644
--- a/test/results/stats/default/threema.pcap.out
+++ b/test/results/stats/default/threema.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/thrift.pcap.out b/test/results/stats/default/thrift.pcap.out
index e0e01a588..efd0ba390 100644
--- a/test/results/stats/default/thrift.pcap.out
+++ b/test/results/stats/default/thrift.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tinc.pcap.out b/test/results/stats/default/tinc.pcap.out
index f56c2d618..aa6d0f2ba 100644
--- a/test/results/stats/default/tinc.pcap.out
+++ b/test/results/stats/default/tinc.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
diff --git a/test/results/stats/default/tk.pcap.out b/test/results/stats/default/tk.pcap.out
index c8563e339..08d55ce7a 100644
--- a/test/results/stats/default/tk.pcap.out
+++ b/test/results/stats/default/tk.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tls-appdata.pcap.out b/test/results/stats/default/tls-appdata.pcap.out
index 72e39d0d1..5cb45d4a5 100644
--- a/test/results/stats/default/tls-appdata.pcap.out
+++ b/test/results/stats/default/tls-appdata.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tls-esni-fuzzed.pcap.out b/test/results/stats/default/tls-esni-fuzzed.pcap.out
index 2a4982b6d..43172172a 100644
--- a/test/results/stats/default/tls-esni-fuzzed.pcap.out
+++ b/test/results/stats/default/tls-esni-fuzzed.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:15
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15726
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15861
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/tls-rdn-extract.pcap.out b/test/results/stats/default/tls-rdn-extract.pcap.out
index 1bd967434..902a3af33 100644
--- a/test/results/stats/default/tls-rdn-extract.pcap.out
+++ b/test/results/stats/default/tls-rdn-extract.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:20903
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:21038
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tls_2_reasms.pcapng.out b/test/results/stats/default/tls_2_reasms.pcapng.out
index 667c8afe5..bd5ab8a59 100644
--- a/test/results/stats/default/tls_2_reasms.pcapng.out
+++ b/test/results/stats/default/tls_2_reasms.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:11722
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:11812
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tls_2_reasms_b.pcapng.out b/test/results/stats/default/tls_2_reasms_b.pcapng.out
index 8e0190786..0f7792836 100644
--- a/test/results/stats/default/tls_2_reasms_b.pcapng.out
+++ b/test/results/stats/default/tls_2_reasms_b.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:11711
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:11801
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tls_alert.pcap.out b/test/results/stats/default/tls_alert.pcap.out
index ff74a1ad7..6fb09b587 100644
--- a/test/results/stats/default/tls_alert.pcap.out
+++ b/test/results/stats/default/tls_alert.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:21
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15846
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15936
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tls_certificate_too_long.pcap.out b/test/results/stats/default/tls_certificate_too_long.pcap.out
index 00ecef97e..d794a08a2 100644
--- a/test/results/stats/default/tls_certificate_too_long.pcap.out
+++ b/test/results/stats/default/tls_certificate_too_long.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:252
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:252461
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:252745
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:35
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:11
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:24
@@ -92,11 +92,12 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:33
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:2
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
@@ -115,7 +116,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
diff --git a/test/results/stats/default/tls_cipher_lens.pcap.out b/test/results/stats/default/tls_cipher_lens.pcap.out
index 262774ebb..5a6028aa0 100644
--- a/test/results/stats/default/tls_cipher_lens.pcap.out
+++ b/test/results/stats/default/tls_cipher_lens.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:23
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:21345
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:21462
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:5
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tls_client_certificate_with_missing_server_one.pcapng.out b/test/results/stats/default/tls_client_certificate_with_missing_server_one.pcapng.out
index 0d60160db..5ec0e580c 100644
--- a/test/results/stats/default/tls_client_certificate_with_missing_server_one.pcapng.out
+++ b/test/results/stats/default/tls_client_certificate_with_missing_server_one.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:20
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:19670
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:19805
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:5
diff --git a/test/results/stats/default/tls_ech.pcapng.out b/test/results/stats/default/tls_ech.pcapng.out
index c6ac09beb..3d9e212f7 100644
--- a/test/results/stats/default/tls_ech.pcapng.out
+++ b/test/results/stats/default/tls_ech.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9965
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:10055
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tls_esni_sni_both.pcap.out b/test/results/stats/default/tls_esni_sni_both.pcap.out
index 2e2570cd6..d4d47463a 100644
--- a/test/results/stats/default/tls_esni_sni_both.pcap.out
+++ b/test/results/stats/default/tls_esni_sni_both.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:21
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:18979
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:19159
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
diff --git a/test/results/stats/default/tls_false_positives.pcapng.out b/test/results/stats/default/tls_false_positives.pcapng.out
index 973676672..ceef26fd8 100644
--- a/test/results/stats/default/tls_false_positives.pcapng.out
+++ b/test/results/stats/default/tls_false_positives.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tls_invalid_reads.pcap.out b/test/results/stats/default/tls_invalid_reads.pcap.out
index e32f07ad5..847031c3b 100644
--- a/test/results/stats/default/tls_invalid_reads.pcap.out
+++ b/test/results/stats/default/tls_invalid_reads.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:25
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:17496
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:17523
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tls_long_cert.pcap.out b/test/results/stats/default/tls_long_cert.pcap.out
index 51431ad93..a8df2e8b9 100644
--- a/test/results/stats/default/tls_long_cert.pcap.out
+++ b/test/results/stats/default/tls_long_cert.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:14
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14539
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14674
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tls_malicious_sha1.pcapng.out b/test/results/stats/default/tls_malicious_sha1.pcapng.out
new file mode 100644
index 000000000..02f08d5f9
--- /dev/null
+++ b/test/results/stats/default/tls_malicious_sha1.pcapng.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:11071
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:534
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:4762
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/tls_missing_ch_frag.pcap.out b/test/results/stats/default/tls_missing_ch_frag.pcap.out
index c135974b4..0e11f8ae9 100644
--- a/test/results/stats/default/tls_missing_ch_frag.pcap.out
+++ b/test/results/stats/default/tls_missing_ch_frag.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14615
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14624
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tls_multiple_synack_different_seq.pcapng.out b/test/results/stats/default/tls_multiple_synack_different_seq.pcapng.out
index 4c815dc8c..bb5d83079 100644
--- a/test/results/stats/default/tls_multiple_synack_different_seq.pcapng.out
+++ b/test/results/stats/default/tls_multiple_synack_different_seq.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:11945
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:12080
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tls_port_80.pcapng.out b/test/results/stats/default/tls_port_80.pcapng.out
index 0eeac15d9..513b63631 100644
--- a/test/results/stats/default/tls_port_80.pcapng.out
+++ b/test/results/stats/default/tls_port_80.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9723
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9813
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
diff --git a/test/results/stats/default/tls_torrent.pcapng.out b/test/results/stats/default/tls_torrent.pcapng.out
index 3a21d6406..e7d4a11c1 100644
--- a/test/results/stats/default/tls_torrent.pcapng.out
+++ b/test/results/stats/default/tls_torrent.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:13
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:14869
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15004
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tls_unidirectional.pcap.out b/test/results/stats/default/tls_unidirectional.pcap.out
index 03b0be3f7..b3cb62aef 100644
--- a/test/results/stats/default/tls_unidirectional.pcap.out
+++ b/test/results/stats/default/tls_unidirectional.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:21
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:26935
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:26998
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:2
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
diff --git a/test/results/stats/default/tls_verylong_certificate.pcap.out b/test/results/stats/default/tls_verylong_certificate.pcap.out
index 77ff26080..d2426d666 100644
--- a/test/results/stats/default/tls_verylong_certificate.pcap.out
+++ b/test/results/stats/default/tls_verylong_certificate.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:14
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15828
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:15963
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/toca-boca.pcap.out b/test/results/stats/default/toca-boca.pcap.out
index ad10e9d89..864754090 100644
--- a/test/results/stats/default/toca-boca.pcap.out
+++ b/test/results/stats/default/toca-boca.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:17
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tor.pcap.out b/test/results/stats/default/tor.pcap.out
index 771f12def..48a55b1f8 100644
--- a/test/results/stats/default/tor.pcap.out
+++ b/test/results/stats/default/tor.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:166
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:117676
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:117271
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:11
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:5
@@ -92,9 +92,10 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:4
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:17
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
@@ -152,7 +153,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
diff --git a/test/results/stats/default/tplink_shp.pcap.out b/test/results/stats/default/tplink_shp.pcap.out
index 8a0a2672b..22f2191f2 100644
--- a/test/results/stats/default/tplink_shp.pcap.out
+++ b/test/results/stats/default/tplink_shp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/trickbot.pcap.out b/test/results/stats/default/trickbot.pcap.out
index 4940c38a5..7d7dff96c 100644
--- a/test/results/stats/default/trickbot.pcap.out
+++ b/test/results/stats/default/trickbot.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/tumblr.pcap.out b/test/results/stats/default/tumblr.pcap.out
index 050d8f4ab..a3467b9fe 100644
--- a/test/results/stats/default/tumblr.pcap.out
+++ b/test/results/stats/default/tumblr.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:329
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:282796
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:283651
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:47
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:46
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:19
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/tunnelbear.pcap.out b/test/results/stats/default/tunnelbear.pcap.out
index ecbfc41c7..00d8c10c5 100644
--- a/test/results/stats/default/tunnelbear.pcap.out
+++ b/test/results/stats/default/tunnelbear.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:193
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:169563
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:171318
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:21
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:13
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:8
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:20
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/tuya_lp.pcap.out b/test/results/stats/default/tuya_lp.pcap.out
index 1984f70e1..fbcd0c979 100644
--- a/test/results/stats/default/tuya_lp.pcap.out
+++ b/test/results/stats/default/tuya_lp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:13
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/ubntac2.pcap.out b/test/results/stats/default/ubntac2.pcap.out
index 1b5c57c23..7ae835c10 100644
--- a/test/results/stats/default/ubntac2.pcap.out
+++ b/test/results/stats/default/ubntac2.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/uftp_v4_v5.pcap.out b/test/results/stats/default/uftp_v4_v5.pcap.out
new file mode 100644
index 000000000..863381e25
--- /dev/null
+++ b/test/results/stats/default/uftp_v4_v5.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:29
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:26909
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:285420
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:15
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/ultrasurf.pcap.out b/test/results/stats/default/ultrasurf.pcap.out
index 332a38a41..eccd98f0c 100644
--- a/test/results/stats/default/ultrasurf.pcap.out
+++ b/test/results/stats/default/ultrasurf.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:32
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:46045
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:46225
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:8
diff --git a/test/results/stats/default/umas.pcap.out b/test/results/stats/default/umas.pcap.out
new file mode 100644
index 000000000..a6bc81fad
--- /dev/null
+++ b/test/results/stats/default/umas.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:12
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9473
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:1788
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:16862
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/upnp.pcap.out b/test/results/stats/default/upnp.pcap.out
index fbd8983cf..e6491103c 100644
--- a/test/results/stats/default/upnp.pcap.out
+++ b/test/results/stats/default/upnp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/viber.pcap.out b/test/results/stats/default/viber.pcap.out
index 06a30c65b..0d0b23bed 100644
--- a/test/results/stats/default/viber.pcap.out
+++ b/test/results/stats/default/viber.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:222
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:185605
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:186415
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:29
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:23
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:25
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/vk.pcapng.out b/test/results/stats/default/vk.pcapng.out
index f07d6c050..765742761 100644
--- a/test/results/stats/default/vk.pcapng.out
+++ b/test/results/stats/default/vk.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:84
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:74819
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:74999
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:10
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/vnc.pcap.out b/test/results/stats/default/vnc.pcap.out
index f098478c5..12163e1cb 100644
--- a/test/results/stats/default/vnc.pcap.out
+++ b/test/results/stats/default/vnc.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/vrrp3.pcapng.out b/test/results/stats/default/vrrp3.pcapng.out
index 72d49d616..d52265f33 100644
--- a/test/results/stats/default/vrrp3.pcapng.out
+++ b/test/results/stats/default/vrrp3.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/vxlan.pcap.out b/test/results/stats/default/vxlan.pcap.out
index e400c5f1e..da91a7a19 100644
--- a/test/results/stats/default/vxlan.pcap.out
+++ b/test/results/stats/default/vxlan.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/wa_video.pcap.out b/test/results/stats/default/wa_video.pcap.out
index e7865f4ba..2301ce4f9 100644
--- a/test/results/stats/default/wa_video.pcap.out
+++ b/test/results/stats/default/wa_video.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:11
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/wa_voice.pcap.out b/test/results/stats/default/wa_voice.pcap.out
index 5df0ca05a..1a8e62612 100644
--- a/test/results/stats/default/wa_voice.pcap.out
+++ b/test/results/stats/default/wa_voice.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:207
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:177398
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:177578
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:28
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:26
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:25
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/waze.pcap.out b/test/results/stats/default/waze.pcap.out
index 7c300c400..55bbc8588 100644
--- a/test/results/stats/default/waze.pcap.out
+++ b/test/results/stats/default/waze.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:282
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:227442
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:228972
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:33
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:30
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:23
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/webdav.pcap.out b/test/results/stats/default/webdav.pcap.out
new file mode 100644
index 000000000..77af3f977
--- /dev/null
+++ b/test/results/stats/default/webdav.pcap.out
@@ -0,0 +1,168 @@
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:11
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:7918
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:337
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:1633
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_size_smaller_than_header" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip6_l4_payload_detection" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_tcp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_udp_packet_too_short" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_tracker_ads_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_dangerous_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unrated_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unspecified_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_media_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_vpn_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_email_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_data_transfer_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_web_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_social_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_download_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_game_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_chat_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_system_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_software_update_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_music_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_video_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_shopping_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_productivity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_file_sharing_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_conn_check_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_iot_scada_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_virt_assistant_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cybersecurity_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_adult_content_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_mining_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_malware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_advertisment_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_banned_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_site_unavail_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_allowed_site_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_antimalware_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_crypto_currency_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_gambling_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_2_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_3_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_4_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_5_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_6_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_7_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_8_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_9_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_10_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_11_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_12_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_13_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_14_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_15_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_16_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_17_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_18_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_19_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_20_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_21_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_22_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_23_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_24_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_25_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_26_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_27_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_28_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_29_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_30_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_31_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_32_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_33_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_34_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_35_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_36_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_50_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_51_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_52_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_53_count" interval=60 N:0
diff --git a/test/results/stats/default/webex.pcap.out b/test/results/stats/default/webex.pcap.out
index 0b1876f31..9d491119c 100644
--- a/test/results/stats/default/webex.pcap.out
+++ b/test/results/stats/default/webex.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:500
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:419111
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:422981
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:57
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:45
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:12
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:53
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:10
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/websocket.pcap.out b/test/results/stats/default/websocket.pcap.out
index e78b2efd6..1dfe76e19 100644
--- a/test/results/stats/default/websocket.pcap.out
+++ b/test/results/stats/default/websocket.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/wechat.pcap.out b/test/results/stats/default/wechat.pcap.out
index b9234c41a..f218d48cf 100644
--- a/test/results/stats/default/wechat.pcap.out
+++ b/test/results/stats/default/wechat.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:888
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:771195
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:774930
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:109
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:52
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:57
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:84
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:11
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/weibo.pcap.out b/test/results/stats/default/weibo.pcap.out
index 17fcc5233..c9e106c15 100644
--- a/test/results/stats/default/weibo.pcap.out
+++ b/test/results/stats/default/weibo.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:267
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:220965
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:221010
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:44
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:43
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:23
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/whatsapp.pcap.out b/test/results/stats/default/whatsapp.pcap.out
index 52ee2c9a6..b64b8c5b0 100644
--- a/test/results/stats/default/whatsapp.pcap.out
+++ b/test/results/stats/default/whatsapp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:86
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:86
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/whatsapp_login_call.pcap.out b/test/results/stats/default/whatsapp_login_call.pcap.out
index bc505cbcf..00ce1fa93 100644
--- a/test/results/stats/default/whatsapp_login_call.pcap.out
+++ b/test/results/stats/default/whatsapp_login_call.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:461
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:378089
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:378359
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:57
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:24
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:33
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:33
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
diff --git a/test/results/stats/default/whatsapp_login_chat.pcap.out b/test/results/stats/default/whatsapp_login_chat.pcap.out
index 864e54c1a..f12163f53 100644
--- a/test/results/stats/default/whatsapp_login_chat.pcap.out
+++ b/test/results/stats/default/whatsapp_login_chat.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:2
diff --git a/test/results/stats/default/whatsapp_voice_and_message.pcap.out b/test/results/stats/default/whatsapp_voice_and_message.pcap.out
index 278a46466..19b2c824c 100644
--- a/test/results/stats/default/whatsapp_voice_and_message.pcap.out
+++ b/test/results/stats/default/whatsapp_voice_and_message.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:13
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/whatsappfiles.pcap.out b/test/results/stats/default/whatsappfiles.pcap.out
index d96b5a549..e445536f8 100644
--- a/test/results/stats/default/whatsappfiles.pcap.out
+++ b/test/results/stats/default/whatsappfiles.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:24
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:23180
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:23405
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/whois.pcapng.out b/test/results/stats/default/whois.pcapng.out
index 1ae308373..f108c0d3c 100644
--- a/test/results/stats/default/whois.pcapng.out
+++ b/test/results/stats/default/whois.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:30
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:26423
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:26513
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:4
diff --git a/test/results/stats/default/windowsupdate_over_http.pcap.out b/test/results/stats/default/windowsupdate_over_http.pcap.out
index 950ef689a..208b4150d 100644
--- a/test/results/stats/default/windowsupdate_over_http.pcap.out
+++ b/test/results/stats/default/windowsupdate_over_http.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/wireguard.pcap.out b/test/results/stats/default/wireguard.pcap.out
index 6398fb132..837d345f1 100644
--- a/test/results/stats/default/wireguard.pcap.out
+++ b/test/results/stats/default/wireguard.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/wow.pcap.out b/test/results/stats/default/wow.pcap.out
index affa11c2c..b0534baed 100644
--- a/test/results/stats/default/wow.pcap.out
+++ b/test/results/stats/default/wow.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/xdmcp.pcap.out b/test/results/stats/default/xdmcp.pcap.out
index 8056c5b46..4bcece932 100644
--- a/test/results/stats/default/xdmcp.pcap.out
+++ b/test/results/stats/default/xdmcp.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/xiaomi.pcap.out b/test/results/stats/default/xiaomi.pcap.out
index 071faf9f0..1665b5821 100644
--- a/test/results/stats/default/xiaomi.pcap.out
+++ b/test/results/stats/default/xiaomi.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:7
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/xss.pcap.out b/test/results/stats/default/xss.pcap.out
index ce83be6ba..1f21f8f41 100644
--- a/test/results/stats/default/xss.pcap.out
+++ b/test/results/stats/default/xss.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/yandex.pcapng.out b/test/results/stats/default/yandex.pcapng.out
index fc4aa321d..fc5e9162e 100644
--- a/test/results/stats/default/yandex.pcapng.out
+++ b/test/results/stats/default/yandex.pcapng.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:84
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:73196
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:73656
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:9
@@ -11,7 +11,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:19090
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:29801
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:45
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
@@ -92,9 +92,10 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:4
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
@@ -152,7 +153,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_37_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_38_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_39_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_40_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_41_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
diff --git a/test/results/stats/default/steam_datagram_relay_ping.pcapng.out b/test/results/stats/default/yojimbo.pcap.out
index cd6c43a7a..5f2d4af83 100644
--- a/test/results/stats/default/steam_datagram_relay_ping.pcapng.out
+++ b/test/results/stats/default/yojimbo.pcap.out
@@ -1,5 +1,5 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:8
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:9229
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:7
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:6512
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:1
@@ -9,11 +9,11 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:2600
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:1078
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/youtube_quic.pcap.out b/test/results/stats/default/youtube_quic.pcap.out
index 847072451..740f0630b 100644
--- a/test/results/stats/default/youtube_quic.pcap.out
+++ b/test/results/stats/default/youtube_quic.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/youtubeupload.pcap.out b/test/results/stats/default/youtubeupload.pcap.out
index d8e095f3e..b2f4f1790 100644
--- a/test/results/stats/default/youtubeupload.pcap.out
+++ b/test/results/stats/default/youtubeupload.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:30
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:40499
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:40634
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:3
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/z3950.pcapng.out b/test/results/stats/default/z3950.pcapng.out
index 79029d66a..99ad9bddc 100644
--- a/test/results/stats/default/z3950.pcapng.out
+++ b/test/results/stats/default/z3950.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/zabbix.pcap.out b/test/results/stats/default/zabbix.pcap.out
index 2ed3d94a7..13f4c7910 100644
--- a/test/results/stats/default/zabbix.pcap.out
+++ b/test/results/stats/default/zabbix.pcap.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:24
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
diff --git a/test/results/stats/default/zattoo.pcap.out b/test/results/stats/default/zattoo.pcap.out
index 19635b5cb..eeb85928d 100644
--- a/test/results/stats/default/zattoo.pcap.out
+++ b/test/results/stats/default/zattoo.pcap.out
@@ -1,5 +1,5 @@
PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:20
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:17983
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:18073
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:1
diff --git a/test/results/stats/default/zoom.pcap.out b/test/results/stats/default/zoom.pcap.out
index a5d4bc192..845f65b89 100644
--- a/test/results/stats/default/zoom.pcap.out
+++ b/test/results/stats/default/zoom.pcap.out
@@ -1,5 +1,5 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:252
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:214963
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:317
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:243514
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:33
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:27
@@ -12,17 +12,17 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:69672
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:259806
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:11
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:35
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:115
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
-PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-status_count" interval=60 N:2
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_datalink" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unknown_l3_protocol" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_unsupported_datalink" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_too_short" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_type_unknown" interval=60 N:35
PUTVAL "localhost/exec-nDPIsrvd/counter-error_packet_header_invalid" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_packet_too_short" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_ip4_size_smaller_than_header" interval=60 N:0
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:31
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:21
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:3
diff --git a/test/results/stats/default/zoom2.pcap.out b/test/results/stats/default/zoom2.pcap.out
index 08805df25..3cc2f190e 100644
--- a/test/results/stats/default/zoom2.pcap.out
+++ b/test/results/stats/default/zoom2.pcap.out
@@ -1,19 +1,19 @@
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:48
-PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:41357
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_lines" interval=60 N:46
+PUTVAL "localhost/exec-nDPIsrvd/counter-json_bytes" interval=60 N:42074
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_new_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_end_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_idle_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_update_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_analyse_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_guessed_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:5
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:2
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detected_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_detection_update_count" interval=60 N:8
PUTVAL "localhost/exec-nDPIsrvd/counter-flow_not_detected_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:294574
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:251877
-PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_src_total_bytes" interval=60 N:14983
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_dst_total_bytes" interval=60 N:82787
+PUTVAL "localhost/exec-nDPIsrvd/counter-flow_risky_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/counter-packet_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:25
+PUTVAL "localhost/exec-nDPIsrvd/counter-packet_flow_count" interval=60 N:20
PUTVAL "localhost/exec-nDPIsrvd/counter-init_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/counter-reconnect_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-shutdown_count" interval=60 N:1
@@ -36,7 +36,7 @@ PUTVAL "localhost/exec-nDPIsrvd/counter-error_capture_size_smaller_than_packet"
PUTVAL "localhost/exec-nDPIsrvd/counter-error_max_flows_to_track" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/counter-error_flow_memory_alloc" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_safe_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_acceptable_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_fun_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_unsafe_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_breed_potentially_dangerous_count" interval=60 N:0
@@ -58,7 +58,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_voip_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_database_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_remote_access_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_cloud_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_network_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_collaborative_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_rpc_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_category_streaming_count" interval=60 N:0
@@ -88,28 +88,29 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_port" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_partial_cache" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_cache" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:3
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:6
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_high" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_severe" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_critical" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_emergency" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_unknown" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip4_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_ip6_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l3_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_tcp_count" interval=60 N:1
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_udp_count" interval=60 N:3
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:1
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_icmp_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_l4_other_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_unknown_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:5
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:5
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_active_count" interval=60 N:4
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_detected_count" interval=60 N:4
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_guessed_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_not_detected_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_1_count" interval=60 N:0
@@ -157,7 +158,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_42_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_43_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_44_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_45_count" interval=60 N:0
-PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_46_count" interval=60 N:3
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_47_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_48_count" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_risk_49_count" interval=60 N:0
diff --git a/test/results/stats/default/zoom_p2p.pcapng.out b/test/results/stats/default/zoom_p2p.pcapng.out
index 76276d777..9a498d88e 100644
--- a/test/results/stats/default/zoom_p2p.pcapng.out
+++ b/test/results/stats/default/zoom_p2p.pcapng.out
@@ -92,6 +92,7 @@ PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi" interval=60 N:9
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_nbpf" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_by_ip" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_dpi_aggressive" interval=60 N:0
+PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_custom_rule" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_confidence_unknown" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_low" interval=60 N:0
PUTVAL "localhost/exec-nDPIsrvd/gauge-flow_severity_medium" interval=60 N:0