summaryrefslogtreecommitdiffstats
path: root/collectors
AgeCommit message (Collapse)Author
2022-07-19Fix cgroups unit testsVladimir Kobal
2022-07-18cgroups: add "k8s." prefix to chart context in k8silyam8
2022-07-15added permanent labels to all charts about plugin, module and family; added ↵Costa Tsaousis
labels to all proc plugin modules
2022-07-13fully working attempt 2Costa Tsaousis
2022-07-13chore(python.d): remove python.d/* announced in v1.35.0 deprecation notice ↵Ilya Mashchenko
(#13370)
2022-07-12chore(python.d): improve config file parsing error message (#13363)Ilya Mashchenko
2022-07-07fix(cgroups.plugin): adjust kubepods patterns to filter pods when using Kind ↵Ilya Mashchenko
cluster (#13324)
2022-07-06fix(apps.plugin): adjust `zmstat*` pattern to exclude zoneminder scripts ↵Ilya Mashchenko
(#13314)
2022-07-06Multi-Tier database backend for long term metrics storage (#13263)Stelios Fragkakis
* Tier part 1 * Tier part 2 * Tier part 3 * Tier part 4 * Tier part 5 * Fix some ML compilation errors * fix more conflicts * pass proper tier * move metric_uuid from state to RRDDIM * move aclk_live_status from state to RRDDIM * move ml_dimension from state to RRDDIM * abstracted the data collection interface * support flushing for mem db too * abstracted the query api * abstracted latest/oldest time per metric * cleanup * store_metric for tier1 * fix for store_metric * allow multiple tiers, more than 2 * state to tier * Change storage type in db. Query param to request min, max, sum or average * Store tier data correctly * Fix skipping tier page type * Add tier grouping in the tier * Fix to handle archived charts (part 1) * Temp fix for query granularity when requesting tier1 data * Fix parameters in the correct order and calculate the anomaly based on the anomaly count * Proper tiering grouping * Anomaly calculation based on anomaly count * force type checking on storage handles * update cmocka tests * fully dynamic number of storage tiers * fix static allocation * configure grouping for all tiers; disable tiers for unittest; disable statsd configuration for private charts mode * use default page dt using the tiering info * automatic selection of tier * fix for automatic selection of tier * working prototype of dynamic tier selection * automatic selection of tier done right (I hope) * ask for the proper tier value, based on the grouping function * fixes for unittests and load_metric_next() * fixes for lgtm findings * minor renames * add dbengine to page cache size setting * add dbengine to page cache with malloc * query engine optimized to loop as little are required based on the view_update_every * query engine grouping methods now do not assume a constant number of points per group and they allocate memory with OWA * report db points per tier in jsonwrap * query planer that switches database tiers on the fly to satisfy the query for the entire timeframe * dbegnine statistics and documentation (in progress) * calculate average point duration in db * handle single point pages the best we can * handle single point pages even better * Keep page type in the rrdeng_page_descr * updated doc * handle future backwards compatibility - improved statistics * support &tier=X in queries * enfore increasing iterations on tiers * tier 1 is always 1 iteration * backfilling higher tiers on first data collection * reversed anomaly bit * set up to 5 tiers * natural points should only be offered on tier 0, except a specific tier is selected * do not allow more than 65535 points of tier0 to be aggregated on any tier * Work only on actually activated tiers * fix query interpolation * fix query interpolation again * fix lgtm finding * Activate one tier for now * backfilling of higher tiers using raw metrics from lower tiers * fix for crash on start when storage tiers is increased from the default * more statistics on exit * fix bug that prevented higher tiers to get any values; added backfilling options * fixed the statistics log line * removed limit of 255 iterations per tier; moved the code of freezing rd->tiers[x]->db_metric_handle * fixed division by zero on zero points_wanted * removed dead code * Decide on the descr->type for the type of metric * dont store metrics on unknown page types * free db_metric_handle on sql based context queries * Disable STORAGE_POINT value check in the exporting engine unit tests * fix for db modes other than dbengine * fix for aclk archived chart queries destroying db_metric_handles of valid rrddims * fix left-over freez() instead of OWA freez on median queries Co-authored-by: Costa Tsaousis <costa@netdata.cloud> Co-authored-by: Vladimir Kobal <vlad@prokk.net>
2022-07-05fix(cgroups.plugin): adjust kubepods regex to fix name resolution in a kind ↵Ilya Mashchenko
cluster (#13302)
2022-06-30Pluginsd doc (#13273)thiagoftsm
2022-06-30Rename the chart of real memory usage in FreeBSD (#13271)Vladimir Kobal
2022-06-30Dont print io errors for cgroups (#13274)Vladimir Kobal
2022-06-30chore(python.d): remove deprecated modules from python.d.conf (#13264)Ilya Mashchenko
2022-06-30Ebpf issues (#13259)thiagoftsm
2022-06-29Add fstype labels to disk charts (#13245)Vladimir Kobal
2022-06-28Dictionaries with reference counters and full deletion support during ↵Costa Tsaousis
traversal (#13195) * dont use atomic operations when not needed; detect misuse of the the unsafe functions * use relaxed atomic operations for statistics * use relaxed atomic operations for statistics * dictionaries now use reference counters, allowing deletetions of any item while traversing it * added acquire/release interface to dictionaries * added unittest for reference counters * added NETDATA_INTERNAL_CHECKS logs to detect non-exclusive access to crusial parts of the dictionaries * dictionaries cannot be deleted while there are referenced items in them - they will be deleted once the last item gets unreferenced * cleanup * properly cleanup released items * maintain counters for readers and writers; defer all deletes on sorted walkthrough; cleaner internal_error(); * somewhat faster reference counters on single threaded dictionaries * minor optimizations; allow compiling without internal checks
2022-06-28netdata doubles (#13217)Costa Tsaousis
* netdata doubles * fix cmocka test * fix cmocka test again * fix left-overs of long double to NETDATA_DOUBLE * RRDDIM detached from disk representation; db settings in [db] section of netdata.conf * update the memory before saving * rrdset is now detached from file structures too * on memory mode map, update the memory mapped structures on every iteration * allow RRD_ID_LENGTH_MAX to be changed * granularity secs, back to update every * fix formatting * more formatting
2022-06-28feat(python.d): load modules from user plugin directories ↵Ilya Mashchenko
(NETDATA_USER_PLUGINS_DIRS) (#13214)
2022-06-27fix(cgroups.plugin): fix qemu VMs and LXC containers name resolution (#13220)Ilya Mashchenko
2022-06-26deduplicate mountinfo based on mount point (#13215)Costa Tsaousis
2022-06-24Add user plugin dirs to environment (#13203)Vladimir Kobal
Co-authored-by: Ilya Mashchenko <ilya@netdata.cloud>
2022-06-22Fix cgroups netdev chart labels (#13200)Vladimir Kobal
2022-06-22feat(python.d/smartd_log): add 2nd job that tries to read from ↵Ilya Mashchenko
'/var/lib/smartmontools/' (#13188)
2022-06-22Add type label for network interfaces (#13187)Vladimir Kobal
2022-06-21fix(freebsd.plugin): fix wired/cached/avail memory calculation on FreeBSD ↵Ilya Mashchenko
with ZFS (#13183)
2022-06-20feat(proc/proc_net_dev): add dim per phys link state to the "Interface ↵Ilya Mashchenko
Physical Link State" chart (#13176) * add dim per carrier state * fix down state
2022-06-17feat(proc/proc_net_dev): add dim per duplex state to the "Interface Duplex ↵Ilya Mashchenko
State" chart (#13165)
2022-06-17feat(proc/proc_net_dev): add dim per operstate to the "Interface Operational ↵Ilya Mashchenko
State" chart (#13167)
2022-06-17Fix coverity issues (#13168)Stelios Fragkakis
2022-06-16Use memset to mark the empty words in the quoted_strings_splitter function ↵Stelios Fragkakis
(#13161) Use memset to terminate the words
2022-06-16Add mem.available chart to FreeBSD (#13140)Emmanuel Vasilakis
2022-06-16Add cargo/rustc/bazel/buck to apps_groups.conf (#13143)vkalintiris
2022-06-15Update docs on what to do if collector not there (#13152)Chris Akritidis
2022-06-15Use a separate thread for slow mountpoints in the diskspace plugin (#13067)Vladimir Kobal
2022-06-14fix(python.d): urllib3 import collection for py3.10+ (#13136)Ilya Mashchenko
2022-06-14fix(python.d/mongodb): set `serverSelectionTimeoutMS` for pymongo4+ (#13135)Ilya Mashchenko
fix server_selection_timeout for pymongo4+
2022-06-13Labels with dictionary (#13070)Costa Tsaousis
* squashed and rebased to master * fix overflow and single character bug in sanitize; include rrd.h instead of node_info.h * added unittest for UTF-8 multibyte sanitization * Fix unit test compilation * Fix CMake build * remove double sanitizer for opentsdb; cleanup sanitize_json_string() * rename error_description to error_message to avoid conflict with json-c * revert last and undef error_description from json-c * more unittests; attempt to fix protobuf map issue * get rid of rrdlabels_get() and replace it with a safe version that writes the value to a buffer * added dictionary sorting unittest; rrdlabels_to_buffer() now is sorted * better sorted dictionary checking * proper unittesting for sorted dictionaries * call dictionary deletion callback when destroying the dictionary * remove obsolete variable * Fix exporting unit tests * Fix k8s label parsing test * workaround for cmocka and strdupz() * Bypass cmocka memory allocation check * Revert "Bypass cmocka memory allocation check" This reverts commit 4c49923839d9229bea23ca914dd8a0be1ebe2bf4. * Revert "workaround for cmocka and strdupz()" This reverts commit 7bebee04801db1865c748a7896d5fa54bb7104a5. * Bypass cmocka memory allocation checks * respect json formatting for chart labels * cloud sends colons * print the value only once * allow parenthesis in values and spaces; make stream sender send quotes for values Co-authored-by: Vladimir Kobal <vlad@prokk.net>
2022-06-10docs(statsd.plugin): fix indentation (#13096)Ilya Mashchenko
fix indentation
2022-06-02fix(cgroup.plugin): read k8s_cluster_name label from the correct file (#13062)Ilya Mashchenko
2022-06-01coverity fixes about statsd; removal of strsame (#13049)Costa Tsaousis
2022-06-01Dictionary with JudyHS and double linked list (#13032)Costa Tsaousis
* dictionary internals isolation * more dictionary cleanups * added unit test * we should use DICT internally * disable cups in cmake * implement DICTIONARY with Judy arrays * operational JUDY implementation * JUDY cleanup * JUDY summary added * JudyHS implementation with double linked list * test negative searches too * optimize destruction * optimize set to insert first without lookup * updated stats * code cleanup; better organization; updated info * more code cleanup and commenting * more cleanup, renames and comments * fix rename * more cleanups * use Judy.h from system paths * added foreach traversal; added flag to add item in front; isolated locks to their own functions; destruction returns the number of bytes freed * more comments; flags are now 16-bit * completed unittesting * addressed comments and added reference counters maintainance * added unittest in main; tested removal of items in front, back and middle * added read/write walkthrough and foreach; allowed walkthrough and foreach in write mode to delete the current element (used by cups.plugin); referenced counters removed from the API * DICTFE.name should be const too * added API calls for exposing all statistics * dictionary flags as enum and reference counters as atomic operations * more comments; improved error handling at unit tests * added functions to allow unsafe access while traversing the dictionary with locks in place * check for libcups in cmake * added delete callback; implemented statsd with this dictionary * added missing dfe_done() * added alternative implementation with AVL * added documentation * added comments and warning about AVL * dictionary walktrhough on new code * simplified foreach; updated docs * updated docs * AVL is much faster without hashes * AVL should follow DBENGINE
2022-06-01add note about anomaly advisor (#13042)Andrew Maguire
2022-06-01Fix disabled apps (ebpf.plugin) (#13044)thiagoftsm
2022-05-31Skip collecting network interface speed and duplex if carrier is down (#13019)Vladimir Kobal
2022-05-30Update apps_groups.conf (#13033)FQX
2022-05-27Initialize a pointer and add a check for it (#13023)Vladimir Kobal
2022-05-26Alarms py collector add filtering (#12972)Andrew Maguire
add ability to filter alarms in `alarms.conf`
2022-05-25add dictionary support to statsd (#12980)Costa Tsaousis
* add dictionary support to statsd * faster statsd sets and dictionaries; disabled events dimensions by default * properly detect tags, even without a sampling rate * statsd assumes a pipe between fields * missing param * allow names without values and support more unknown fields * more parser fixes * support multiple tags; remove the sum from the dimensions of histograms and timers, but keep it for synthetic charts * Parse statsd tags and support changing units of private charts * remove debug code * added support for naming dimensions too * updated docs * added support for family tags * updated docs
2022-05-24Run the /net/dev module of the proc plugin in a separate thread (#12996)Vladimir Kobal