https://stackoverflow.com/questions/32960857/how-to-convert-arbitrary-simple-json-to-csv-using-jq
jq -r '
(map(keys) | add | unique) as $cols
| map(. as $row | $cols | map($row[.])) as $rows
| $cols, $rows[]
| @csv' tda_permit_logs_01.json | less
"action","comments","destination","name","port","protocol","source"
"permit","","ip.src","ip.dst,tcp.dstport,ip.src,tcp.srcport","tcp.srcport","tcp","ip.dst"
"permit","","10.246.218.23","10.237.183.5,48834,10.246.218.23,10443","10443","tcp","10.237.183.5"
."Time","Blade","Action","Type","Interface","Origin","Source","Destination","Protocol","Service","Destination Port","Rule","Access Rule Name","Policy Name","Description" "Oct 11, 2023 1:20:49 AM",Firewall,Drop,Connection,bond2.3355,czt-dc2-fw-tda1_czt-bank-tda1,s1s0068n.cz.srv.acc.sys (10.242.137.37),host_10.242.140.21 (10.242.140.21),TCP (6) (6),sqlnet2-1526,1526,4201,Cleanup rule,czt-tda_policy, "Oct 11, 2023 1:20:49 AM",Firewall,Drop,Connection,bond2.3366,czt-dc2-fw-tda1_czt-bank-tda1,s28860ht.cz.srv.dev.sys (10.242.213.16),host_10.244.208.13 (10.244.208.13),TCP (6) (6),TCP_48000-48100,48002,4201,Cleanup rule,czt-tda_policy,
jq ''