@@ -63,36 +63,54 @@ def process_netflow(netflow_port, named_pipe_filename):
6363 "ts" : ts ,
6464 "client" : client_ip ,
6565 "seq" : export .header .sequence ,
66- "flows" : [{
67- "IN_BYTES" : data ["IN_BYTES" ],
68- "PROTOCOL" : data ["PROTOCOL" ],
69- "DIRECTION" : data ["DIRECTION" ],
70- "INPUT_SNMP" : data ["INPUT_SNMP" ],
71- "OUTPUT_SNMP" : data ["OUTPUT_SNMP" ],
72- "L4_DST_PORT" : data ["L4_DST_PORT" ],
73- "L4_SRC_PORT" : data ["L4_SRC_PORT" ],
74- "IPV4_DST_ADDR" : data ["IPV4_DST_ADDR" ],
75- "IPV4_SRC_ADDR" : data ["IPV4_SRC_ADDR" ],
76- } for data in flows_data ],
66+ "flows" : [[
67+ # "IN_BYTES":
68+ data ["IN_BYTES" ],
69+ # "PROTOCOL":
70+ data ["PROTOCOL" ],
71+ # "DIRECTION":
72+ data ["DIRECTION" ],
73+ # "L4_DST_PORT":
74+ data ["L4_DST_PORT" ],
75+ # "L4_SRC_PORT":
76+ data ["L4_SRC_PORT" ],
77+ # "INPUT_SNMP":
78+ data ["INPUT_SNMP" ],
79+ # "OUTPUT_SNMP":
80+ data ["OUTPUT_SNMP" ],
81+ # "IPV4_DST_ADDR":
82+ data ["IPV4_DST_ADDR" ],
83+ # "IPV4_SRC_ADDR":
84+ data ["IPV4_SRC_ADDR" ],
85+ ] for data in flows_data ],
7786 }
7887 elif export .header .version == 5 :
7988 entry = {
8089 "ts" : ts ,
8190 "client" : client_ip ,
8291 "seq" : export .header .sequence ,
83- "flows" : [{
84- "IN_BYTES" : data ["IN_OCTETS" ],
85- "PROTOCOL" : data ["PROTO" ],
86- "DIRECTION" : DIRECTION_INGRESS ,
87- "INPUT_SNMP" : data ["INPUT" ],
88- "OUTPUT_SNMP" : data ["OUTPUT" ],
89- "L4_DST_PORT" : data ["DST_PORT" ],
90- "L4_SRC_PORT" : data ["SRC_PORT" ],
92+ "flows" : [[
93+ # "IN_BYTES":
94+ data ["IN_OCTETS" ],
95+ # "PROTOCOL":
96+ data ["PROTO" ],
97+ # "DIRECTION":
98+ DIRECTION_INGRESS ,
99+ # "L4_DST_PORT":
100+ data ["DST_PORT" ],
101+ # "L4_SRC_PORT":
102+ data ["SRC_PORT" ],
103+ # "INPUT_SNMP":
104+ data ["INPUT" ],
105+ # "OUTPUT_SNMP":
106+ data ["OUTPUT" ],
91107 # netflow v5 IP addresses are decoded to integers, which is less suitable for us - pack
92108 # them back to bytes and transform them to strings:
93- "IPV4_DST_ADDR" : socket .inet_ntoa (struct .pack ('!I' , data ["IPV4_DST_ADDR" ])),
94- "IPV4_SRC_ADDR" : socket .inet_ntoa (struct .pack ('!I' , data ["IPV4_SRC_ADDR" ])),
95- } for data in flows_data ],
109+ # "IPV4_DST_ADDR":
110+ socket .inet_ntoa (struct .pack ('!I' , data ["IPV4_DST_ADDR" ])),
111+ # "IPV4_SRC_ADDR":
112+ socket .inet_ntoa (struct .pack ('!I' , data ["IPV4_SRC_ADDR" ])),
113+ ] for data in flows_data ],
96114 }
97115 else :
98116 log .error (f"Only Netflow v5 and v9 currently supported, ignoring record (version: [{ export .header .version } ])" )
0 commit comments