Thanks to visit codestin.com
Credit goes to github.com

Skip to content

v2.5.0

Latest
Compare
Choose a tag to compare
@netdatabot netdatabot released this 05 May 22:41
· 13 commits to master since this release

Table of Contents

Release Summary

Netdata v2.5.0 continues our commitment to stability with significant improvements to system robustness. This release focuses on eliminating potential crashes, resolving memory issues, and enhancing thread management across the codebase. We've implemented comprehensive deadlock detection, improved resource cleanup procedures, and added protection against corrupted data files.

Acknowledgments

  • @barracuda156 for fixing compilation on macOS versions earlier than 11.
  • @luiizaferreirafonseca for fixing grammar in the main README file.
  • @rhoriguchi for fixing filtering of systemd-nspawn container payload in cgroups monitoring.

Contributions

Collectors

Improvements
Other
  • Reorganized code in Windows plugin IIS module for better maintainability (#20182, @thiagoftsm)
  • Added initial work-in-progress implementation of Netdata exporter for OpenTelemetry (#20171, #20199, @ilyam8)
  • Removed legacy code that handled the WMI to Windows collector renaming in Go module configurations (#20166, @ilyam8)
  • Cleaned up SNMP collector by removing unused code from vendored Datadog profile components (#20164, @ilyam8)
  • Added detailed UPS response logging in debug mode for APC UPS collector (#20157, @ilyam8)
  • Improved test coverage for OpenTelemetry journald exporter remote client functionality (#20143, @ilyam8)
  • Added metric descriptions and proper unit definitions to SNMP collector profiles for improved chart rendering (#20100, #20163, @Ancairon)

Packaging/Installation

All changes
  • Updated Windows installer to use a unified license agreement page instead of multiple separate license pages (#20134, @Ferroin)
  • Updated supported platforms for CI and package builds, adding Alpine 3.21, CentOS Stream 10, Ubuntu 25.04, and Fedora 42 (#20119, #20177, @Ferroin)

Documentation

All changes
  • Added documentation for centralizing and managing namespaced logs (#20217, @ktsaou)
  • Improved security and privacy design documentation (#20208, @kanelatechnical)
  • Added comprehensive documentation for the Dynamic Configuration system, including component usage guidelines and developer information (#20187, #20232, @ktsaou)
  • Improved systemd journal logs documentation (#20184, @kanelatechnical)
  • Updated platform support documentation to reflect current compatibility with the latest FreeBSD and macOS versions (#20165, @ilyam8)
  • Improved dashboard and charts documentation with better formatting, consistent language, and enhanced visual elements for easier navigation (#20162, @kanelatechnical)
  • Fixed grammar and improved clarity in the main README file (#20144, @luiizaferreirafonseca)
  • Changed installation documentation to use proper admonition syntax for informational blocks (#20136, @kanelatechnical)
  • Changed deployment documentation title from singular to plural form (#20133, @kanelatechnical)
  • Updated installation documentation with improved structure, user-friendly language, visual aids, and proper Docusaurus syntax (#20122, @kanelatechnical)

Other Notable Changes

Bug Fixes
  • Fixed potential crashes by adding null pointer checks when accessing journal and data files (#20226, @stelfrag)
  • Added local collection of analytics data to support API information requests, while still respecting telemetry preferences for external reporting (#20221, @stelfrag)
  • Fixed exporting engine issues including crash on shutdown in static builds and timeout handling when waiting for threads to exit (#20212, @ktsaou)
  • Fixed thread allocation to consider system memory constraints, preventing crashes during startup on systems with high CPU counts but limited RAM (#20192, @ktsaou)
  • Fixed potential crash during thread termination in exporting engine (#20191, @ktsaou)
  • Fixed signal handling to ignore maintenance signals during shutdown process to prevent conflicts (#20190, @ktsaou)
  • Fixed potential crash when handling repeating alerts that were not properly queued (#20186, @stelfrag)
  • Fixed race condition when logging pending messages by ensuring atomic operations (#20185, #20188, #20189 @ktsaou)
  • Fixed health configuration schema parameter for database lookup absolute option to prevent UI validation failures (#20161, @ilyam8)
  • Fixed multiple memory issues including optimized context queues, buffer overflow protection, thread synchronization for metadata transitions, improved dictionary cleanup, and proper ML model resource management (#20159, @ktsaou)
  • Fixed label memory accounting to prevent negative values in memory tracking (#20158, @stelfrag)
  • Fixed crash in Windows MSSQL collector during performance data processing (#20131, #20032 @thiagoftsm)
  • Fixed database engine startup to safely handle corrupted journal files by skipping them during metrics registry population (#20128, @stelfrag)
  • Fixed memory leak by properly freeing ACLK message payloads when MQTT connection is unavailable (#20125, @stelfrag)
  • Fixed memory leaks and improved cleanup procedures across multiple modules, including plugins.d threads, diskspace plugin, and pattern arrays (#20120, @ktsaou)
Other
  • Improved system type detection by fixing mini-PC identification and adding Proxmox server detection (#20229, @ktsaou)
  • Fixed potential crashes with additional validation in journal file header operations and improved pointer handling (#20224, #20225, @ktsaou)
  • Fixed SQL resource cleanup by properly handling prepared statements during thread termination (#20211, @stelfrag)
  • Fixed health log cleanup to avoid blocking operations by deferring cleanup when write locks cannot be immediately acquired (#20213, @stelfrag)
  • Fixed hardcoding of eval variables (#20210, @ktsaou)
  • Fixed various issues including secure token handling in logs, empty response handling, NULL pointer protection in labels, and extended deadlock detection timeout (#20209, #20219, @ktsaou)
  • Added more detailed information to spinlock deadlock detection logs for better troubleshooting (#20207, @ktsaou)
  • Fixed spinlock initialization in rrdlabels to ensure proper locking behavior (#20206, @ktsaou)
  • Removed status file spinlock to eliminate potential deadlock scenarios (#20205, @ktsaou)
  • Fixed potential race condition by preventing journal indexing operations during database rotation or file deletion (#20204, @stelfrag)
  • Fixed potential deadlocks by consolidating memory-mapped file and journal v2 operations under a single lock (#20202, @stelfrag)
  • Added default busy timeout for database operations to improve reliability during concurrent access (#20201, @stelfrag)
  • Added fast path optimization to waiting queue implementation, more than doubling its performance (#20198, @ktsaou)
  • Fixed deadlock detection by changing spinlock timeout threshold to 10 minutes to better identify problematic code patterns (#20197, @ktsaou)
  • Fixed metadata discovery to exclude obsolete entries while ensuring replicating data remains accessible (#20196, #20200, #20203, @ktsaou)
  • Fixed potential resource leak by properly cleaning up machine learning cached pointers when child nodes disconnect (#20195, @ktsaou)
  • Fixed debugging information in page cache errors and thread joining issues to help with troubleshooting (#20181, @ktsaou)
  • Changed machine learning anomaly rate grouping to use chart contexts instead of types for more meaningful analysis (#20180, @vkalintiris)
  • Fixed compilation when building with database engine support disabled (#20154, @stelfrag)
  • Fixed compilation on macOS versions earlier than 11 (#20145, @barracuda156)
  • Fixed metadata event loop shutdown process with improved job termination, better progress tracking, and enhanced early shutdown handling (#20132, @stelfrag)
  • Fixed compilation when building with address sanitizer without internal checks enabled (#20129, @stelfrag)
  • Added a new expression evaluator for alert conditions using re2c/lemon for lexing and parsing (#20126, @ktsaou)
  • Fixed Windows installer to create necessary empty configuration directories to prevent errors (#20124, @thiagoftsm)
  • Fixed error handling for database operations with better detection of fatal conditions like disk full situations, and improved usage metrics (#20112, @stelfrag)
  • Improved memory leak detection with a standalone stack trace capture system that tracks resource allocations, particularly helping identify dictionary reference leaks (#20106, #20130 @ktsaou)
  • Updated SQLite database engine to version 3.49.1 (#19933, @stelfrag)

Deprecation notice

Changed in this release

No changes.

Important Changes in Next Major Release

Deprecated Components

Component Type Versions Being Deprecated
APIs v1, v2

What This Means

Only the v3 API and v3 Dashboard will be supported starting with the next major release. These newer versions offer improved performance, enhanced features, and better security.

Important Changes in Next Minor Release

No changes are expected.

Support options

As we grow, we stay committed to providing the best support ever seen from an open-source solution. Should you encounter an issue with any of the changes made in this release or any feature in the Netdata Agent, feel free to contact us through one of the following channels:

  • Premium Support: Customers who wish to have a direct channel with Netdata and prioritized support with defined SLAs can contact us.
  • Netdata Learn: Find documentation, guides, and reference material for monitoring and troubleshooting your systems with Netdata.
  • GitHub Issues: Use the Netdata repository to report bugs or open a new feature request.
  • GitHub Discussions: Join the conversation around the Netdata development process and be a part of it.
  • Community Forums: Visit the Community Forums and contribute to the collaborative knowledge base.
  • Discord Server: Jump into the Netdata Discord and hang out with like-minded sysadmins, DevOps, SREs, and other troubleshooters. More than 2000 engineers are already using it!