Sflow not sending to server in latest rolling images

sflow sends data to the configured collector as expected in 2025.08.18-0022-rolling and older. In rolling releases I’ve tried newer than that, including the current latest available 2025.10.07-0019-rolling the sflow stats appear to show that the system thinks it is sending at least some data, but the collector server never receives anything.

No changes to the config between versions, just a simple add system image latest, keep the suggested name, Y to all the questions.

I searched through vyos.dev but didn’t find anything glaring to add this to as a functionality failure report / bug.

2025.08.18-0022-rolling show sflow | strip-private output after 7days:

--------------------------  -------------------------------------------------------
Agent address               xxx.xxx.1.1
sFlow interfaces            ['eth3.10', 'eth3.15', 'eth3.20', 'eth3.30', 'eth3.99']
sFlow servers               ['xxx.xxx.1.98']
Counter samples sent        122207
Datagrams sent              1248069
Packet samples sent         3479546
Packet samples dropped      0
Packet drops sent           2614832
Packet drops suppressed     62837
Flow samples suppressed     0
Counter samples suppressed  0
--------------------------  -------------------------------------------------------

2025.10.07-0019-rolling show sflow | strip-private output after roughly 11 hours:

--------------------------  -------------------------------------------------------
Agent address               xxx.xxx.1.1
sFlow interfaces            ['eth3.10', 'eth3.15', 'eth3.20', 'eth3.30', 'eth3.99']
sFlow servers               ['xxx.xxx.1.98']
Counter samples sent        1353
Datagrams sent              51786
Packet samples sent         0
Packet samples dropped      0
Packet drops sent           183129
Packet drops suppressed     4567
Flow samples suppressed     0
Counter samples suppressed  0
--------------------------  -------------------------------------------------------

Relevant config via show configuration commands | strip-private | grep -i sflow:

set system sflow agent-address 'xxx.xxx.1.1'
set system sflow agent-interface 'eth3.10'
set system sflow drop-monitor-limit '50'
set system sflow interface 'eth3.10'
set system sflow interface 'eth3.15'
set system sflow interface 'eth3.20'
set system sflow interface 'eth3.30'
set system sflow interface 'eth3.99'
set system sflow polling '30'
set system sflow sampling-rate '128'
set system sflow server xxxxx.tld port '6343'

Log from the server showing the data drop after the switchover to the new rolling image:

Ident: 'XXXX' Flows: 1074, Packets: 137472, Bytes: 96478720, Sequence Errors: 0, Bad Packets: 0
Ident: 'XXXX' Flows: 1491, Packets: 190848, Bytes: 294210688, Sequence Errors: 0, Bad Packets: 0
Ident: 'XXXX' Flows: 1317, Packets: 168576, Bytes: 125048064, Sequence Errors: 0, Bad Packets: 0
Ident: 'XXXX' Flows: 1964, Packets: 251392, Bytes: 155377280, Sequence Errors: 0, Bad Packets: 0
Ident: 'XXXX' Flows: 2263, Packets: 289664, Bytes: 674814464, Sequence Errors: 0, Bad Packets: 0
Ident: 'XXXX' Flows: 586, Packets: 75008, Bytes: 300915200, Sequence Errors: 0, Bad Packets: 0
Ident: 'XXXX' Flows: 0, Packets: 0, Bytes: 0, Sequence Errors: 0, Bad Packets: 0
Ident: 'XXXX' Flows: 0, Packets: 0, Bytes: 0, Sequence Errors: 0, Bad Packets: 0
Ident: 'XXXX' Flows: 0, Packets: 0, Bytes: 0, Sequence Errors: 0, Bad Packets: 0
Ident: 'XXXX' Flows: 0, Packets: 0, Bytes: 0, Sequence Errors: 0, Bad Packets: 0
Ident: 'XXXX' Flows: 0, Packets: 0, Bytes: 0, Sequence Errors: 0, Bad Packets: 0
Ident: 'XXXX' Flows: 0, Packets: 0, Bytes: 0, Sequence Errors: 0, Bad Packets: 0

Hello,
not able to reproduce with this config

2025.08.18-0022-rolling > 2025.10.07-0019-rolling

set system sflow agent-address '10.0.2.1'
set system sflow agent-interface 'eth1'
set system sflow drop-monitor-limit '50'
set system sflow interface 'eth1.10'
set system sflow interface 'eth1.20'
set system sflow interface 'eth1.30'
set system sflow interface 'eth1.40'
set system sflow interface 'eth1.50'
set system sflow interface 'eth1.99'
set system sflow interface 'eth0'
set system sflow interface 'eth1'
set system sflow polling '30'
set system sflow sampling-rate '20'
set system sflow server 10.0.2.2 port '6364'


Agent address 10.0.2.1
sFlow interfaces [‘eth0’]
sFlow servers [‘10.0.2.2’]
Counter samples sent 131
Datagrams sent 586
Packet samples sent 79
Packet samples dropped 0
Packet drops sent 488
Packet drops suppressed 82
Flow samples suppressed 0
Counter samples suppressed 0


My collector received data.

Can you share migration log?
And insure the resolution of names work after update, as i see your server destination is tld

Destination server config is via IP, the TLD redact is something strip-private did.

I’ll re-upgrade to latest rolling, retest, and share the migration log if the issue is still present for me. Please standby…

After going from 2025.08.18-0022-rolling to 2025.10.25-0019-rolling:

x@x:~$ cat /config/vyos-migrate.log
List of applied migration modules:
applying /opt/vyatta/etc/config-migrate/migrate/firewall/19-to-20
applying /opt/vyatta/etc/config-migrate/migrate/flow-accounting/2-to-3
applying /opt/vyatta/etc/config-migrate/migrate/interfaces/33-to-34
applying /opt/vyatta/etc/config-migrate/migrate/vpp/1-to-2

Still not looking promising…

x@x:~$ uptime
 19:13:01 up 9 min,  1 user,  load average: 0.00, 0.09, 0.09
x@x:~$ show sflow | strip-private
--------------------------  -------------------------------------------------------
Agent address               xxx.xxx.1.1
sFlow interfaces            ['eth3.10', 'eth3.15', 'eth3.20', 'eth3.30', 'eth3.99']
sFlow servers               ['xxx.xxx.1.98']
Counter samples sent        16
Datagrams sent              892
Packet samples sent         0
Packet samples dropped      0
Packet drops sent           3787
Packet drops suppressed     1014
Flow samples suppressed     0
Counter samples suppressed  0
--------------------------  -------------------------------------------------------

One thought, did anything change with firewalling, interfaces or offloading recently that might be causing this?

x@x:~$ show configuration commands | grep -i offload
set interfaces ethernet eth0 offload gro
set interfaces ethernet eth0 offload gso
set interfaces ethernet eth0 offload hw-tc-offload
set interfaces ethernet eth0 offload rfs
set interfaces ethernet eth0 offload rps
set interfaces ethernet eth0 offload sg
set interfaces ethernet eth0 offload tso
<snip>
set interfaces ethernet eth3 offload gro
set interfaces ethernet eth3 offload gso
set interfaces ethernet eth3 offload hw-tc-offload
set interfaces ethernet eth3 offload rfs
set interfaces ethernet eth3 offload rps
set interfaces ethernet eth3 offload sg
set interfaces ethernet eth3 offload tso

The provided sFlow config is not enough to reproduce it

I do not have any issues with sflow with/without VLANs (I don’t have any firewall rules)

1 Like

Disabling offloading had no effect.

Note that sflow isn’t indicating it’s picking up any packet samples even though it should be.

x@x:~$ uptime && show sflow | strip-private
 18:09:59 up 9 min,  1 user,  load average: 0.08, 0.10, 0.08
--------------------------  -------------------------------------------------------
Agent address               xxx.xxx.1.1
sFlow interfaces            ['eth3.10', 'eth3.15', 'eth3.20', 'eth3.30', 'eth3.99']
sFlow servers               ['xxx.xxx.1.98']
Counter samples sent        16
Datagrams sent              881
Packet samples sent         0
Packet samples dropped      0
Packet drops sent           3882
Packet drops suppressed     767
Flow samples suppressed     0
Counter samples suppressed  0
--------------------------  -------------------------------------------------------

What else can I provide to help isolate this?

Something in the codebase changed at some point after 2025.08.18-0022-rolling and is breaking things. This sflow configuration I run has been functional for over a year, the only difference here is the VyOS build itself.

I guess I’ll run through newer rolling releases one-by-one until I pinpoint where it stops functioning.

Guessing it is something with ⚓ T7755 Bump hsflowd version… Nothing else sticks out in the changes listed for 2025.09.01-0023-rolling

Working on 2025.08.28-0019-rolling - Release 2025.08.28-0019-rolling · vyos/vyos-nightly-build · GitHub

x@x:~$ uptime && show sflow | strip-private
 18:55:29 up 8 min,  1 user,  load average: 0.02, 0.15, 0.12
--------------------------  -------------------------------------------------------
Agent address               xxx.xxx.1.1
sFlow interfaces            ['eth3.10', 'eth3.15', 'eth3.20', 'eth3.30', 'eth3.99']
sFlow servers               ['xxx.xxx.1.98']
Counter samples sent        84
Datagrams sent              1442
Packet samples sent         3471
Packet samples dropped      0
Packet drops sent           4155
Packet drops suppressed     926
Flow samples suppressed     0
Counter samples suppressed  0
--------------------------  -------------------------------------------------------

Broken at & after 2025.09.01-0023-rolling - Release 2025.09.01-0023-rolling · vyos/vyos-nightly-build · GitHub

x@x:~$ uptime && show sflow | strip-private
 18:45:36 up 7 min,  1 user,  load average: 0.11, 0.16, 0.11
--------------------------  -------------------------------------------------------
Agent address               xxx.xxx.1.1
sFlow interfaces            ['eth3.10', 'eth3.15', 'eth3.20', 'eth3.30', 'eth3.99']
sFlow servers               ['xxx.xxx.1.98']
Counter samples sent        14
Datagrams sent              861
Packet samples sent         0
Packet samples dropped      0
Packet drops sent           3859
Packet drops suppressed     964
Flow samples suppressed     0
Counter samples suppressed  0
--------------------------  -------------------------------------------------------

Tested a bit more - If I change the sflow config to use the base eth3 instead of the VIF sub-interfaces it starts working as expected again. This is on 2025.10.28-0019-rolling:

x@x:~$ cat /run/sflow/hsflowd.conf | strip-private
# Genereated by /usr/libexec/vyos/conf_mode/system_sflow.py
# Parameters http://sflow.net/host-sflow-linux-config.php

sflow {
  polling=30
  sampling=100
  sampling.bps_ratio=0
  agentIP=xxx.xxx.1.1
  agent=eth3.10
  collector { ip = xxx.xxx.1.98 udpport = 6343 }
  pcap { dev=eth3.10 }
  pcap { dev=eth3.15 }
  pcap { dev=eth3.20 }
  pcap { dev=eth3.30 }
  pcap { dev=eth3.99 }
  dropmon { limit=50 start=on sw=on hw=off }
  dbus { }
}
x@x:~$ show sflow | strip-private
--------------------------  -------------------------------------------------------
Agent address               xxx.xxx.1.1
sFlow interfaces            ['eth3.10', 'eth3.15', 'eth3.20', 'eth3.30', 'eth3.99']
sFlow servers               ['xxx.xxx.1.98']
Counter samples sent        7
Datagrams sent              317
Packet samples sent         0
Packet samples dropped      0
Packet drops sent           1299
Packet drops suppressed     17
Flow samples suppressed     0
Counter samples suppressed  0
--------------------------  -------------------------------------------------------
x@x:~$ configure
[edit]
x@x# delete system sflow interface
[edit]
x@x# set system sflow interface 'eth3'
[edit]
x@x# compare
[system sflow]
- interface "eth3.10"
- interface "eth3.15"
- interface "eth3.20"
- interface "eth3.30"
- interface "eth3.99"
+ interface "eth3"

[edit]
x@x# commit; save; exit
x@x:~$ cat /run/sflow/hsflowd.conf | strip-private
# Genereated by /usr/libexec/vyos/conf_mode/system_sflow.py
# Parameters http://sflow.net/host-sflow-linux-config.php

sflow {
  polling=30
  sampling=100
  sampling.bps_ratio=0
  agentIP=xxx.xxx.1.1
  agent=eth3.10
  collector { ip = xxx.xxx.1.98 udpport = 6343 }
  pcap { dev=eth3 }
  dropmon { limit=50 start=on sw=on hw=off }
  dbus { }
}
x@x:~$ show sflow | strip-private
--------------------------  ----------------
Agent address               xxx.xxx.1.1
sFlow interfaces            ['eth3']
sFlow servers               ['xxx.xxx.1.98']
Counter samples sent        4
Datagrams sent              83
Packet samples sent         143
Packet samples dropped      0
Packet drops sent           241
Packet drops suppressed     2
Flow samples suppressed     0
Counter samples suppressed  0
--------------------------  ----------------