summaryrefslogtreecommitdiffstats
path: root/database/rrdfunctions.c
diff options
context:
space:
mode:
Diffstat (limited to 'database/rrdfunctions.c')
-rw-r--r--database/rrdfunctions.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/database/rrdfunctions.c b/database/rrdfunctions.c
index b72d3681a5..a60c6cbfb5 100644
--- a/database/rrdfunctions.c
+++ b/database/rrdfunctions.c
@@ -779,18 +779,34 @@ void host_functions2json(RRDHOST *host, BUFFER *wb) {
buffer_json_object_close(wb);
}
-void chart_functions_to_dict(DICTIONARY *rrdset_functions_view, DICTIONARY *dst) {
+void chart_functions_to_dict(DICTIONARY *rrdset_functions_view, DICTIONARY *dst, void *value, size_t value_size) {
if(!rrdset_functions_view || !dst) return;
struct rrd_collector_function *t;
dfe_start_read(rrdset_functions_view, t) {
if(!t->collector->running) continue;
- dictionary_set(dst, t_dfe.name, NULL, 0);
+ dictionary_set(dst, t_dfe.name, value, value_size);
}
dfe_done(t);
}
+void host_functions_to_dict(RRDHOST *host, DICTIONARY *dst, void *value, size_t value_size, STRING **help) {
+ if(!host || !host->functions || !dictionary_entries(host->functions) || !dst) return;
+
+ struct rrd_collector_function *t;
+ dfe_start_read(host->functions, t) {
+ if(!t->collector->running) continue;
+
+ if(help)
+ *help = t->help;
+
+ dictionary_set(dst, t_dfe.name, value, value_size);
+ }
+ dfe_done(t);
+}
+
+
int rrdhost_function_streaming(BUFFER *wb, int timeout __maybe_unused, const char *function __maybe_unused,
void *collector_data __maybe_unused,
function_data_ready_callback callback __maybe_unused, void *callback_data __maybe_unused) {