Skip to content

Releases: Liquescent-Development/ovs_exporter

Release v2.3.1

15 Sep 22:23
09153e3

Choose a tag to compare

What's Changed

New Features

  • Add total requests counter metric (ovs_requests_total) for accurate success rate calculation
    • Tracks all requests made to the OVS stack
    • Enables accurate calculation of request success rates
    • Previously only failed requests were tracked, making true success rate impossible to determine

Improvements

  • Updated Grafana dashboards to use accurate success rate formula: (1 - (failed_requests / total_requests)) * 100
  • Enhanced metrics documentation with new metric and example queries
  • Added IncrementRequestCounter() method to track total requests across all OVS operations

Metrics

New metric added:

  • ovs_requests_total - Counter for total number of requests to OVN stack

Example Usage

# Calculate request success rate
(1 - (rate(ovs_failed_requests_total[5m]) / rate(ovs_requests_total[5m]))) * 100

Full Changelog

v2.3.0...v2.3.1

Release v2.3.0

14 Sep 18:09
26b0266

Choose a tag to compare

What's Changed

Major Improvements

  • Prometheus Naming Compliance: All metrics now follow official Prometheus naming conventions

    • Added _total suffix to all counter metrics
    • Added unit suffixes (_bytes, _seconds, _kilobits, etc.)
    • Changed percentage metrics to ratios (0-1 scale)
    • Improved naming clarity throughout
  • System ID Auto-Discovery: The exporter now retrieves system-id from the OVS database first

    • No more need for /etc/openvswitch/system-id.conf on newer OVS versions
    • Automatically falls back to file for older versions
    • Uses ovs-vsctl get Open_vSwitch . external-ids:system-id
  • Documentation Overhaul

    • New comprehensive METRICS.md documenting all 100+ metrics
    • Completely rewritten README with correct installation instructions
    • Added extensive multi-tenant monitoring examples
    • Included troubleshooting guide

Multi-Tenant Monitoring

The README now includes detailed examples of using Prometheus joins with external_ids for tenant-based aggregation, avoiding cardinality issues while enabling powerful multi-tenant queries.

Breaking Changes

⚠️ Many metric names have changed to comply with Prometheus naming conventions. Please review METRICS.md for the complete list of current metric names.

Full Changelog

  • refactor: update metrics to conform to Prometheus naming best practices
  • feat: retrieve system-id from OVS database before falling back to file
  • docs: consolidate metrics documentation into comprehensive METRICS.md
  • feat: add comprehensive flow cache performance metrics
  • feat: implement comprehensive PMD metrics collection

Installation

Download the appropriate release for your architecture:

Linux AMD64

```bash
wget https://github.com/Liquescent-Development/ovs_exporter/releases/download/v2.3.0/ovs-exporter-2.3.0.linux-amd64.tar.gz
tar xvzf ovs-exporter-2.3.0.linux-amd64.tar.gz
cd ovs-exporter-*
sudo ./install.sh
```

Linux ARM64

```bash
wget https://github.com/Liquescent-Development/ovs_exporter/releases/download/v2.3.0/ovs-exporter-2.3.0.linux-arm64.tar.gz
tar xvzf ovs-exporter-2.3.0.linux-arm64.tar.gz
cd ovs-exporter-*
sudo ./install.sh
```

Verification

```bash
systemctl status ovs-exporter
curl -s localhost:9475/metrics | grep ovs_up
```

v2.2.0 - Complete PMD and Flow Cache Metrics

11 Sep 22:10
a5c5072

Choose a tag to compare

🎉 Complete Feature Implementation

This release completes the implementation of ALL metrics from the Red Hat OVS observability blog post.

✅ PMD Performance Metrics

  • CPU Metrics: Per-PMD thread CPU utilization, busy/idle cycles
  • Packet Processing: Packets per iteration, total packets processed
  • RX/TX Batch Statistics: Complete batch size tracking with averages and maximums
  • Iteration Tracking: Busy vs idle iterations, sleep iterations
  • Cache Hit Rates: Exact match, masked hits, misses per PMD thread

✅ Flow Cache Performance

  • EMC (Exact Match Cache): Hit rate, total hits, insertions
  • SMC (Signature Match Cache): Hit rate, total hits
  • Megaflow Cache: Hit rate, hits, misses
  • Total Flow Lookups: Comprehensive lookup tracking

✅ Detailed Drop Statistics

  • All 24 specific drop counter categories
  • Individual metrics via ovs_datapath_drops_total with drop_reason label
  • Includes critical counters like drop_action_of_pipeline

🐛 Bug Fixes

  • Fixed missing PMD metrics in Prometheus Describe() method
  • Added proper metric registration for all new metrics

📊 New Metrics Summary

  • 9 new flow cache performance metrics
  • 24 individual drop counter metrics
  • Enhanced PMD metrics with complete coverage
  • All metrics properly exposed to Prometheus

📚 Documentation

  • Updated PMD_METRICS.md with all new metrics
  • Added example Prometheus queries for flow cache monitoring
  • Comprehensive metric descriptions and labels

🔧 Compatibility

  • Go 1.24 support
  • Multi-architecture binaries (AMD64 and ARM64)
  • Compatible with DPDK and non-DPDK OVS deployments

v2.1.0 - Enhanced PMD Metrics

11 Sep 21:51
e7da0ce

Choose a tag to compare

What's New

Enhanced PMD/DPDK Metrics

  • Comprehensive PMD performance metrics collection
  • CPU utilization tracking for PMD threads
  • RX/TX batch statistics with averages and maximums
  • Individual drop counter metrics (24 specific drop reasons)
  • vHost queue metrics and TX statistics
  • Flow lookup hit/miss statistics
  • Suspicious iteration detection
  • Fallback mechanisms for non-DPDK deployments

Features

  • All metrics from Red Hat's OVS observability blog post
  • Automatic detection of DPDK vs non-DPDK deployments
  • Enhanced parsing for complete metric extraction
  • Detailed drop categorization via coverage metrics

Documentation

  • Comprehensive PMD metrics documentation in PMD_METRICS.md
  • Example queries and Grafana dashboard suggestions
  • Troubleshooting guide for PMD metric collection

Compatibility

  • Go 1.24 support
  • Updated Prometheus client libraries
  • Multi-architecture support (AMD64 and ARM64)

v2.0.0 - Major Upgrade with PMD Metrics

11 Sep 21:19
d34a479

Choose a tag to compare

Major Improvements

  • Go 1.24 - Modernized from Go 1.20
  • PMD/DPDK Metrics - Comprehensive performance metrics for DPDK deployments
  • Security Updates - All dependencies updated with vulnerability fixes
  • Enhanced Coverage - All metrics from Red Hat's OVS observability blog

New Metrics

  • PMD performance metrics (cycles, packets, batches)
  • vHost statistics (TX retries, contention, IRQs)
  • Upcall metrics
  • See PMD_METRICS.md for full documentation

Breaking Changes

  • Module path changed to github.com/Liquescent-Development/ovs_exporter
  • Minimum Go version is now 1.24

Migration

See MIGRATION.md for upgrade instructions from v1.x