diff options
author | Costa Tsaousis <costa@netdata.cloud> | 2022-06-13 21:31:52 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-13 21:31:52 +0300 |
commit | 986a1abf68415cd0cb2bb0df8967ad0141356a34 (patch) | |
tree | 5418371d34afd797119b5ec7c41991bc578884ec /health | |
parent | 1b0f6c6b2296dc082d85f38c298a61442dcf2490 (diff) |
73x times faster metrics correlations at the agent (#13107)
* faster correlations
* 4x times faster correlations
* a little bit more help
* 10x times faster metrics correlations
* 6 digits precision; better comments
* enabled metrics correlations by default
* abstracted DIFFS_NUMBER to allow easily changing it
* reworked the entire logic to have more accuracy and support a baseline that is power of two multiple of highlight
* properly calculate shifts
* even more improved version
* added support for timeout; fixed another memory leak; skipped hidden dimensions
* default timeout 1min
* reduce memory even further
* use dictionary for the list of charts and optimize locks
* return 403 forbidden, when mc is not enabled
* added query options
* dont process zero dimensions
* added volume method as an option to metric correlations ; now metric correlations can support multiple implementations
* make sure we will never crash
* spread results evenly for both kstwo and volume
* fixed bug in query engine that was missing misaligned queries when a single point was requested from the db; improved comments; improved query flags
* updated swagger and added sane defaults; query options are now supported, including anomaly-bit
* added "raw" option to allow cross node correlations; added "group" option to allow different time aggregations; allowed calling metric correlations without any parameters; allowed calling metric correlations with relative timestamps; added timeout to volume method; properly handled timeout on ks2 method; json output now sends all parameters back - same for json_wrap; modified query engine to use present time for relative timestamps; modified "allow_past" to mean both past backwards and forwards
* emulate the old behaviour about zero points
* 100% accuracy against python ks_2samp(); now the default is volume and the default points are 500
* added config option to change default metric correlations method
* removed work-arounds now that rrdlabels are merged
Diffstat (limited to 'health')
-rw-r--r-- | health/health.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/health/health.c b/health/health.c index 3c1e5693e0..f8159f2d88 100644 --- a/health/health.c +++ b/health/health.c @@ -855,10 +855,12 @@ void *health_main(void *ptr) { /* time_t old_db_timestamp = rc->db_before; */ int value_is_null = 0; - int ret = rrdset2value_api_v1(rc->rrdset, NULL, &rc->value, rc->dimensions, 1, rc->after, - rc->before, rc->group, 0, rc->options, &rc->db_after, - &rc->db_before, &value_is_null, 0 - ); + int ret = rrdset2value_api_v1(rc->rrdset, NULL, &rc->value, rc->dimensions, 1, + rc->after, rc->before, rc->group, + 0, rc->options, + &rc->db_after,&rc->db_before, + NULL, NULL, + &value_is_null, 0); if (unlikely(ret != 200)) { // database lookup failed |