diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-07-24 09:54:23 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-07-24 09:54:44 +0000 |
commit | 836b47cb7e99a977c5a23b059ca1d0b5065d310e (patch) | |
tree | 1604da8f482d02effa033c94a84be42bc0c848c3 /database/rrd.c | |
parent | Releasing debian version 1.44.3-2. (diff) | |
download | netdata-836b47cb7e99a977c5a23b059ca1d0b5065d310e.tar.xz netdata-836b47cb7e99a977c5a23b059ca1d0b5065d310e.zip |
Merging upstream version 1.46.3.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'database/rrd.c')
-rw-r--r-- | database/rrd.c | 168 |
1 files changed, 0 insertions, 168 deletions
diff --git a/database/rrd.c b/database/rrd.c deleted file mode 100644 index 5b7752a5..00000000 --- a/database/rrd.c +++ /dev/null @@ -1,168 +0,0 @@ -// SPDX-License-Identifier: GPL-3.0-or-later -#define NETDATA_RRD_INTERNALS 1 - -#include "rrd.h" -#include "storage_engine.h" - -// ---------------------------------------------------------------------------- -// globals - -/* -// if not zero it gives the time (in seconds) to remove un-updated dimensions -// DO NOT ENABLE -// if dimensions are removed, the chart generation will have to run again -int rrd_delete_unupdated_dimensions = 0; -*/ - -int default_rrd_update_every = UPDATE_EVERY; -int default_rrd_history_entries = RRD_DEFAULT_HISTORY_ENTRIES; -#ifdef ENABLE_DBENGINE -RRD_MEMORY_MODE default_rrd_memory_mode = RRD_MEMORY_MODE_DBENGINE; -#else -RRD_MEMORY_MODE default_rrd_memory_mode = RRD_MEMORY_MODE_SAVE; -#endif -int gap_when_lost_iterations_above = 1; - - -// ---------------------------------------------------------------------------- -// RRD - memory modes - -inline const char *rrd_memory_mode_name(RRD_MEMORY_MODE id) { - switch(id) { - case RRD_MEMORY_MODE_RAM: - return RRD_MEMORY_MODE_RAM_NAME; - - case RRD_MEMORY_MODE_MAP: - return RRD_MEMORY_MODE_MAP_NAME; - - case RRD_MEMORY_MODE_NONE: - return RRD_MEMORY_MODE_NONE_NAME; - - case RRD_MEMORY_MODE_SAVE: - return RRD_MEMORY_MODE_SAVE_NAME; - - case RRD_MEMORY_MODE_ALLOC: - return RRD_MEMORY_MODE_ALLOC_NAME; - - case RRD_MEMORY_MODE_DBENGINE: - return RRD_MEMORY_MODE_DBENGINE_NAME; - } - - STORAGE_ENGINE* eng = storage_engine_get(id); - if (eng) { - return eng->name; - } - - return RRD_MEMORY_MODE_SAVE_NAME; -} - -RRD_MEMORY_MODE rrd_memory_mode_id(const char *name) { - STORAGE_ENGINE* eng = storage_engine_find(name); - if (eng) { - return eng->id; - } - - return RRD_MEMORY_MODE_SAVE; -} - - -// ---------------------------------------------------------------------------- -// RRD - algorithms types - -RRD_ALGORITHM rrd_algorithm_id(const char *name) { - if(strcmp(name, RRD_ALGORITHM_INCREMENTAL_NAME) == 0) - return RRD_ALGORITHM_INCREMENTAL; - - else if(strcmp(name, RRD_ALGORITHM_ABSOLUTE_NAME) == 0) - return RRD_ALGORITHM_ABSOLUTE; - - else if(strcmp(name, RRD_ALGORITHM_PCENT_OVER_ROW_TOTAL_NAME) == 0) - return RRD_ALGORITHM_PCENT_OVER_ROW_TOTAL; - - else if(strcmp(name, RRD_ALGORITHM_PCENT_OVER_DIFF_TOTAL_NAME) == 0) - return RRD_ALGORITHM_PCENT_OVER_DIFF_TOTAL; - - else - return RRD_ALGORITHM_ABSOLUTE; -} - -const char *rrd_algorithm_name(RRD_ALGORITHM algorithm) { - switch(algorithm) { - case RRD_ALGORITHM_ABSOLUTE: - default: - return RRD_ALGORITHM_ABSOLUTE_NAME; - - case RRD_ALGORITHM_INCREMENTAL: - return RRD_ALGORITHM_INCREMENTAL_NAME; - - case RRD_ALGORITHM_PCENT_OVER_ROW_TOTAL: - return RRD_ALGORITHM_PCENT_OVER_ROW_TOTAL_NAME; - - case RRD_ALGORITHM_PCENT_OVER_DIFF_TOTAL: - return RRD_ALGORITHM_PCENT_OVER_DIFF_TOTAL_NAME; - } -} - - -// ---------------------------------------------------------------------------- -// RRD - chart types - -inline RRDSET_TYPE rrdset_type_id(const char *name) { - if(unlikely(strcmp(name, RRDSET_TYPE_AREA_NAME) == 0)) - return RRDSET_TYPE_AREA; - - else if(unlikely(strcmp(name, RRDSET_TYPE_STACKED_NAME) == 0)) - return RRDSET_TYPE_STACKED; - - else // if(unlikely(strcmp(name, RRDSET_TYPE_LINE_NAME) == 0)) - return RRDSET_TYPE_LINE; -} - -const char *rrdset_type_name(RRDSET_TYPE chart_type) { - switch(chart_type) { - case RRDSET_TYPE_LINE: - default: - return RRDSET_TYPE_LINE_NAME; - - case RRDSET_TYPE_AREA: - return RRDSET_TYPE_AREA_NAME; - - case RRDSET_TYPE_STACKED: - return RRDSET_TYPE_STACKED_NAME; - } -} - -// ---------------------------------------------------------------------------- -// RRD - cache directory - -char *rrdhost_cache_dir_for_rrdset_alloc(RRDHOST *host, const char *id) { - char *ret = NULL; - - char b[FILENAME_MAX + 1]; - char n[FILENAME_MAX + 1]; - rrdset_strncpyz_name(b, id, FILENAME_MAX); - - snprintfz(n, FILENAME_MAX, "%s/%s", host->cache_dir, b); - ret = strdupz(n); - - if(host->rrd_memory_mode == RRD_MEMORY_MODE_MAP || host->rrd_memory_mode == RRD_MEMORY_MODE_SAVE) { - int r = mkdir(ret, 0775); - if(r != 0 && errno != EEXIST) - netdata_log_error("Cannot create directory '%s'", ret); - } - - return ret; -} - -// ---------------------------------------------------------------------------- -// RRD - string management - -STRING *rrd_string_strdupz(const char *s) { - if(unlikely(!s || !*s)) return string_strdupz(s); - - char *tmp = strdupz(s); - json_fix_string(tmp); - STRING *ret = string_strdupz(tmp); - freez(tmp); - return ret; -} |