diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-05 11:19:16 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-05 12:07:37 +0000 |
commit | b485aab7e71c1625cfc27e0f92c9509f42378458 (patch) | |
tree | ae9abe108601079d1679194de237c9a435ae5b55 /src/database/rrdfunctions-internals.h | |
parent | Adding upstream version 1.44.3. (diff) | |
download | netdata-b485aab7e71c1625cfc27e0f92c9509f42378458.tar.xz netdata-b485aab7e71c1625cfc27e0f92c9509f42378458.zip |
Adding upstream version 1.45.3+dfsg.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/database/rrdfunctions-internals.h')
-rw-r--r-- | src/database/rrdfunctions-internals.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/database/rrdfunctions-internals.h b/src/database/rrdfunctions-internals.h new file mode 100644 index 00000000..a846e4de --- /dev/null +++ b/src/database/rrdfunctions-internals.h @@ -0,0 +1,36 @@ +// SPDX-License-Identifier: GPL-3.0-or-later + +#ifndef NETDATA_RRDFUNCTIONS_INTERNALS_H +#define NETDATA_RRDFUNCTIONS_INTERNALS_H + +#include "rrd.h" + +#include "rrdcollector-internals.h" + +typedef enum __attribute__((packed)) { + RRD_FUNCTION_LOCAL = (1 << 0), + RRD_FUNCTION_GLOBAL = (1 << 1), + RRD_FUNCTION_DYNCFG = (1 << 2), + + // this is 8-bit +} RRD_FUNCTION_OPTIONS; + +struct rrd_host_function { + bool sync; // when true, the function is called synchronously + RRD_FUNCTION_OPTIONS options; // RRD_FUNCTION_OPTIONS + HTTP_ACCESS access; + STRING *help; + STRING *tags; + int timeout; // the default timeout of the function + int priority; + + rrd_function_execute_cb_t execute_cb; + void *execute_cb_data; + + struct rrd_collector *collector; +}; + +size_t rrd_functions_sanitize(char *dst, const char *src, size_t dst_len); +int rrd_functions_find_by_name(RRDHOST *host, BUFFER *wb, const char *name, size_t key_length, const DICTIONARY_ITEM **item); + +#endif //NETDATA_RRDFUNCTIONS_INTERNALS_H |