Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2018:2102
ovs upstream commit https://github.com/openvswitch/ovs/commit/971f4b394c6e8480300494787fe919869ff3886c
After being able to test this with the collectd change, I still can not see some of the requested metrics: For example, I'm getting (and the same via ovs-ofctl -O OpenFlow14 dump-ports br-admin) Either, we are missing something here, or it has not been implemented? overcloud-compute-0/ovs_stats-br-admin.br-admin/if_collisions overcloud-compute-0/ovs_stats-br-admin.br-admin/if_dropped overcloud-compute-0/ovs_stats-br-admin.br-admin/if_errors overcloud-compute-0/ovs_stats-br-admin.br-admin/if_packets overcloud-compute-0/ovs_stats-br-admin.br-admin/if_rx_errors-crc overcloud-compute-0/ovs_stats-br-admin.br-admin/if_rx_errors-frame overcloud-compute-0/ovs_stats-br-admin.br-admin/if_rx_errors-over overcloud-compute-0/ovs_stats-br-admin.br-admin/if_rx_octets overcloud-compute-0/ovs_stats-br-admin.br-admin/if_tx_octets overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_dropped overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_errors overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_packets overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_packets-128_to_255_packets overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_packets-1523_to_max_packets overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_packets-1_to_64_packets overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_packets-256_to_511_packets overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_packets-512_to_1023_packets overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_packets-65_to_127_packets overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_packets-broadcast_packets overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_rx_errors-crc overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_rx_errors-rx_fragmented_errors overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_rx_errors-rx_jabber_errors overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_rx_errors-rx_oversize_errors overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_rx_errors-rx_undersized_errors overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_rx_octets overcloud-compute-0/ovs_stats-br-admin.dpdk0/if_tx_octets overcloud-compute-0/ovs_stats-br-admin.phy-br-admin/if_packets overcloud-compute-0/ovs_stats-br-admin.phy-br-admin/if_rx_octets overcloud-compute-0/ovs_stats-br-admin.phy-br-admin/if_tx_octets
Hi Matthias, I made a setup with OVS 2.10 and collectd 5.8.0 with the ovs_stats plugin. I understand that there is request to collect some statistics, but I've found that many are already present. These are the requested members - rx_mbuf_allocation_errors - rx_undersize_errors - rx_error_bytes - rx_good_bytes - rx_total_bytes - rx_good_packets - rx_management_packets - rx_multicast_packets - rx_total_missed_packets - rx_total_packets - rx_l3_l4_xsum_error - rx_management_dropped - tx_good_bytes - tx_q0_bytes - tx_broadcast_packets - tx_good_packets - tx_management_packets - tx_total_packets and these are the already present elements. # collectdctl listval |grep -o '/.*ovs.*$' /interface-ovs-netdev/if_dropped /interface-ovs-netdev/if_errors /interface-ovs-netdev/if_octets /interface-ovs-netdev/if_packets /interface-ovsbr0/if_dropped /interface-ovsbr0/if_errors /interface-ovsbr0/if_octets /interface-ovsbr0/if_packets /ovs_stats-ovsbr0.guest1/if_dropped /ovs_stats-ovsbr0.guest1/if_packets /ovs_stats-ovsbr0.guest1/if_rx_octets /ovs_stats-ovsbr0.guest1/if_tx_octets /ovs_stats-ovsbr0.guest2/if_dropped /ovs_stats-ovsbr0.guest2/if_packets /ovs_stats-ovsbr0.guest2/if_rx_octets /ovs_stats-ovsbr0.guest2/if_tx_octets /ovs_stats-ovsbr0.ovsbr0/if_collisions /ovs_stats-ovsbr0.ovsbr0/if_dropped /ovs_stats-ovsbr0.ovsbr0/if_errors /ovs_stats-ovsbr0.ovsbr0/if_packets /ovs_stats-ovsbr0.ovsbr0/if_rx_errors-crc /ovs_stats-ovsbr0.ovsbr0/if_rx_errors-frame /ovs_stats-ovsbr0.ovsbr0/if_rx_errors-over /ovs_stats-ovsbr0.ovsbr0/if_rx_octets /ovs_stats-ovsbr0.ovsbr0/if_tx_octets some info can be gathered by the generic interface plugin, others are missing and I will try to add them.
Hi Matthias, I made a patch based on previous Ryan work, here is the changeset: https://github.com/teknoraver/collectd/commit/f03bb0453efcad57b80ac415da2d96dc263a96ba and here there is what now we find in collectd: # collectdctl listval |grep -o 'ovs_stats-.*' |sort ovs_stats-ovsbr0.dpdk0/if_dropped ovs_stats-ovsbr0.dpdk0/if_errors ovs_stats-ovsbr0.dpdk0/if_packets ovs_stats-ovsbr0.dpdk0/if_packets-128_to_255_packets ovs_stats-ovsbr0.dpdk0/if_packets-1_to_64_packets ovs_stats-ovsbr0.dpdk0/if_packets-256_to_511_packets ovs_stats-ovsbr0.dpdk0/if_packets-512_to_1023_packets ovs_stats-ovsbr0.dpdk0/if_packets-65_to_127_packets ovs_stats-ovsbr0.dpdk0/if_packets-broadcast_packets ovs_stats-ovsbr0.dpdk0/if_packets-management_packets ovs_stats-ovsbr0.dpdk0/if_rx_errors-crc ovs_stats-ovsbr0.dpdk0/if_rx_errors-rx_jabber_errors ovs_stats-ovsbr0.dpdk0/if_rx_errors-rx_oversize_errors ovs_stats-ovsbr0.dpdk0/if_rx_errors-rx_undersize_errors ovs_stats-ovsbr0.dpdk0/if_rx_octets ovs_stats-ovsbr0.dpdk0/if_tx_octets ovs_stats-ovsbr0.guest0/if_dropped ovs_stats-ovsbr0.guest0/if_packets ovs_stats-ovsbr0.guest0/if_rx_octets ovs_stats-ovsbr0.guest0/if_tx_octets ovs_stats-ovsbr0.guest1/if_dropped ovs_stats-ovsbr0.guest1/if_packets ovs_stats-ovsbr0.guest1/if_rx_octets ovs_stats-ovsbr0.guest1/if_tx_octets ovs_stats-ovsbr0.ovsbr0/if_collisions ovs_stats-ovsbr0.ovsbr0/if_dropped ovs_stats-ovsbr0.ovsbr0/if_errors ovs_stats-ovsbr0.ovsbr0/if_packets ovs_stats-ovsbr0.ovsbr0/if_rx_errors-crc ovs_stats-ovsbr0.ovsbr0/if_rx_errors-frame ovs_stats-ovsbr0.ovsbr0/if_rx_errors-over ovs_stats-ovsbr0.ovsbr0/if_rx_octets ovs_stats-ovsbr0.ovsbr0/if_tx_octets As you can see, the management_packets and rx_undersize_errors were not present before, and they were added in OpenFlow 1.4: # ovs-ofctl -O OpenFlow13 dump-ports ovsbr0 |grep -e management_packets -e rx_undersize_errors # ovs-ofctl -O OpenFlow14 dump-ports ovsbr0 |grep -e management_packets -e rx_undersize_errors rx_fragment_errors=0, rx_undersize_errors=0, rx_oversize_errors=0, rx_jabber_errors=0, rx_management_packets=0, rx_management_dropped=0, tx_management_packets=0, rx_mac_short_packet_dropped=0, flow_director_filter_add_errors=0, If you're ok, I'll send the patch upstream. Regards, Matteo
Matteo, this is totally awesome. Please go ahead and send the patch upstream. Best, Matthias
Wow, congrats. This was very quick. I'll look into backporting this. Thanks a lot.
Closing it, as the corresponding bug 1544767 has been verified