Your config looks OK.
Not sure about the Wireshark decoder. It was written some time ago and new structures have been added since. It should skip over anything it doesn't recognize, but maybe not. For a more recent decoder that just prints the raw data I suggest you run it through sflowtool instead:
You can also do this to run hsflowd manually with debugging output to stdout/stderr:
sudo systemctl stop hsflowd
sudo hsflowd -ddd
For example, to focus on the pcap module and make sure it is finding what it is looking for:
sudo hsflowd -ddd 2>&1 | grep -i pcap
If hsflowd does not pick up the NIC ifSpeed correctly then your current config will not enable any packet sampling. You might try something like:
pcap { dev=eth0 }
as an alternative.
On the other hand, it may be finding a 10G interface and using the default 1-in-10000 sampling-rate. To override that you need this in the config:
sampling.10G = 400
The "sampling = 400" setting that you have at the moment will only be used as a fallback -- e.g. for interfaces that have no ifSpeed.
Hope this is clear. Let me know what you find.
Regards,
Neil