Page MenuHomeVyOS Platform

System flow-accounting seems to be broken.
Closed, ResolvedPublicBUG

Description

System flow-accounting perl script seems to be broken.

Simple flow-accounting configuration:

flow-accounting {
    interface eth0.10
    interface eth1
}

Obtained from:

set system flow-accounting interface eth1
set system flow-accounting interface eth0.10
commit

Results in:

$ sh flow-accounting interface eth1 | strip-private 
Argument "tcp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "udp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "udp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "udp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "udp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "udp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "udp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "udp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "udp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "udp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "igmp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "udp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "udp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "igmp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "igmp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "igmp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "igmp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "igmp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
Argument "igmp" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 81.
Argument "--" isn't numeric in addition (+) at /opt/vyatta/bin/sudo-users/vyatta-show-acct.pl line 82.
flow-accounting for [eth1]
Src Addr        Dst Addr        Sport Dport Proto    Packets      Bytes   Flows
xxx.xxx.20.108   0               0     0        22        tcp         --      16
xxx.xxx.20.108   0               0     0      1194        udp         --       0
xxx.xxx.108.146 0               0     0      1195        udp         --       0
xxx.xxx.20.108   0               0     0      1900        udp         --       0
xxx.xxx.20.108   0               0     0      1900        udp         --       0
xxx.xxx.20.108   0               0     0      1900        udp         --       0
xxx.xxx.207.99    0               0     0       123        udp         --       0
xxx.xxx.8.17    0               0     0      1900        udp         --       0
xxx.xxx.20.73    0               0     0      1900        udp         --       0
xxx.xxx.20.108   0               0     0      5353        udp         --       0
xxx.xxx.20.237   0               0     0         0       igmp         --       0
xxx.xxx.111.114   0               0     0       123        udp         --       0
xxx.xxx.68.189   0               0     0       123        udp         --       0
xxx.xxx.20.113   0               0     0         0       igmp         --     192
xxx.xxx.20.136   0               0     0         0       igmp         --     192
xxx.xxx.20.110   0               0     0         0       igmp         --     192
xxx.xxx.20.254   0               0     0         0       igmp         --      64
xxx.xxx.20.122   0               0     0         0       igmp         --       0
xxx.xxx.20.108   0               0     0         0       igmp         --     192

Total entries: 19
Total flows  : 848
Total pkts   : 0
Total bytes  : 0

Details

Version
999.201803270337

Event Timeline

Decided to take an actual look at the script. Seems to be a change in pmacct's output, specifically new fields between TOS ($tos) and PACKETS ($pkts).

New time stamp values make use of white space inside, which makes parsing via simple splitting on white space no longer viable unless you seperate date and time. I suggest using the CSV formatting option for pmacct's output instead if 1 to 1 header preservation is desired.

Watcher7 changed the task status from Open to In progress.Apr 3 2018, 6:08 AM
Watcher7 claimed this task.
Watcher7 triaged this task as Low priority.

Initial observation was wrong. Field headers do not seem to match to values.

Pull request here:
https://github.com/vyos/vyatta-netflow/pull/2

Watcher7 moved this task from Need Triage to Finished on the VyOS 1.2 Crux board.