master
h 52 lines 2.6 KB
Raw
1 // SPDX-License-Identifier: GPL-3.0-or-later
2
3 #ifndef NETDATA_JSONWRAP_INTERNAL_H
4 #define NETDATA_JSONWRAP_INTERNAL_H
5
6 #include "jsonwrap.h"
7 #include "libnetdata/json/json-keys.h"
8
9 struct summary_total_counts {
10 size_t selected;
11 size_t excluded;
12 size_t queried;
13 size_t failed;
14 };
15
16
17 // visualizers
18 void query_target_total_counts(BUFFER *wb, const char *key, struct summary_total_counts *totals);
19 void query_target_metric_counts(BUFFER *wb, QUERY_METRICS_COUNTS *metrics);
20 void query_target_instance_counts(BUFFER *wb, QUERY_INSTANCES_COUNTS *instances);
21 void query_target_alerts_counts(BUFFER *wb, QUERY_ALERTS_COUNTS *alerts, const char *name, bool array);
22 void query_target_points_statistics(BUFFER *wb, QUERY_TARGET *qt, STORAGE_POINT *sp);
23
24 // aggregators
25 void aggregate_metrics_counts(QUERY_METRICS_COUNTS *dst, const QUERY_METRICS_COUNTS *src);
26 void aggregate_instances_counts(QUERY_INSTANCES_COUNTS *dst, const QUERY_INSTANCES_COUNTS *src);
27 void aggregate_alerts_counts(QUERY_ALERTS_COUNTS *dst, const QUERY_ALERTS_COUNTS *src);
28 void aggregate_into_summary_totals(struct summary_total_counts *totals, QUERY_METRICS_COUNTS *metrics);
29
30
31 // common library calls
32 size_t rrdr_dimension_names(BUFFER *wb, const char *key, RRDR *r, RRDR_OPTIONS options);
33 size_t rrdr_dimension_ids(BUFFER *wb, const char *key, RRDR *r, RRDR_OPTIONS options);
34 void query_target_functions(BUFFER *wb, const char *key, RRDR *r);
35 void query_target_info_nodes(BUFFER *wb, const char *key, RRDR_OPTIONS options);
36
37 // summary formatters
38 void query_target_summary_labels_v12(BUFFER *wb, QUERY_TARGET *qt, const char *key, bool v2, struct summary_total_counts *key_totals, struct summary_total_counts *value_totals);
39 void query_target_summary_nodes_v2(BUFFER *wb, QUERY_TARGET *qt, const char *key, struct summary_total_counts *totals);
40 void query_target_summary_instances_v2(BUFFER *wb, QUERY_TARGET *qt, const char *key, struct summary_total_counts *totals);
41 void query_target_summary_dimensions_v12(BUFFER *wb, QUERY_TARGET *qt, const char *key, bool v2, struct summary_total_counts *totals);
42 size_t query_target_summary_contexts_v2(BUFFER *wb, QUERY_TARGET *qt, const char *key, struct summary_total_counts *totals);
43 void query_target_summary_alerts_v2(BUFFER *wb, QUERY_TARGET *qt, const char *key);
44
45 void query_target_summary_instances_v1(BUFFER *wb, QUERY_TARGET *qt, const char *key);
46
47 void jsonwrap_query_plan(RRDR *r, BUFFER *wb, RRDR_OPTIONS options);
48 void jsonwrap_query_metric_plan(BUFFER *wb, QUERY_METRIC *qm, RRDR_OPTIONS options);
49
50 void query_target_detailed_objects_tree(BUFFER *wb, RRDR *r, RRDR_OPTIONS options);
51
52 #endif //NETDATA_JSONWRAP_INTERNAL_H