Skip to content

v2.3.0 / 2023-12-26

Compare
Choose a tag to compare
@bobrik bobrik released this 27 Dec 04:19
· 276 commits to master since this release
4145b41

Highlights:

New examples:

  • Added icmp-ip example with inet_ip decoder (#251)
  • Added pci_vendor, pci_device, pci_class, pci_subclass decoders with examples (#255, #274)
  • Added kstack decoder with an example (#313)
  • Added unix-socket-backlog example (#284)
  • Added softirq-latency example (#300, #304)
  • Added softirq-latency-net-rx example that's an array based version of softirq-latency (#310)
  • Added cfs-throttling example (#311)
  • Added tcp-retransmit example (#318, #335)

Changes to examples:

  • Added jsonschema for examples and cleaned up unused keys (#314)
  • Added exp2zero histogram type for cases when 0 is a significant outcome and added tcp-syn-backlog-exp2zero example (#280)
  • Fixed uint decoder for very large numbers (#296)
  • Removed copy-pasted division by 50 in tcp-syn-backlog-exp2zero example (#301)
  • Added increment_exp2zero_histogram helper macro for examples (#302)
  • Added {increment_map,increment_{exp2,ex2zero}_histogram}_nosync helper macros (#303, #305)
  • Fixed tcp-syn-backlog example with linear histogram (#306)
  • Added example rebuild if any of the headers change (#307)
  • Simplified header includes in examples (#312)
  • Fixed shrinklat example failure due to wrongly sized key (#319)
  • Suppressed BTF warning in the shrinklat example due to type mismatch (#327)
  • Fixed biolatency kernel version check after an upstream LTS backport (#309)

Build changes:

  • Bumped Go to 1.20 and dependencies to latest (#249, #258, #281, #282, #283, #289, #317, #333, #334)
  • Added build-dynamic and build-static make goals (#241)
  • Expanded linting from golangci-lint and fixed uncovered issues (#256, #259, #269, #270)
  • Added configuration loading checks for existing configs to CI (#322, #326)
  • Added export of built examples in CI jobs to attach them to releases (#308, #325)
  • Suppressed errors when building outside of a git repo (#242)
  • Added checks for libbpf version on startup to prevent runtime errors (#247)
  • Clarified libbpf instructions (#262)
  • Started running tests with -race if available (#267)
  • Added checks that produced binaries work in CI (#268)
  • Switched from dbhi/qus/action to more official docker/setup-qemu-action for CI builds (#272)
  • Split Docker image into multiple variants: ebpf_exporter and ebpf_exporter_with_examples (#273)
  • Optimized libbpf dependencies in CI (#275)
  • Added clang-format output diff to CI failures (#328)

Other changes:

  • Styling and typo fixes (#252, #276, #329)
  • Added map value size validation to startup config checks (#257, #321, #322)
  • Added linguist ignores for vmlinux.h files that were screwing language stats (#248)
  • Added .dockerignore for libbpf and built examples (#298)
  • Removed unused perf_event from config definitions (#315)
  • Added support for external BTF information (#320, #323)
  • Added a uprobe benchmark (it's slow!) (#331)