prometheus: respect [backend].send charts matching option
Costa Tsaousis (ktsaou) committed
Jul 10, 2017 at 23:45 UTC
28e45ec15d6af1cfb8ff10a1bd2eef5280ba25e4
3 files changed
+6
-5
src/backend_prometheus.c
+4
-4
@@ -99,12 +99,12 @@ static void rrd_stats_api_v1_charts_allmetrics_prometheus(RRDHOST *host, BUFFER
99
prometheus_label_copy(family, st->family, PROMETHEUS_ELEMENT_MAX);
100
prometheus_name_copy(context, st->context, PROMETHEUS_ELEMENT_MAX);
101
102
- if(unlikely(help || types))
103
- buffer_strcat(wb, "\n");
104
-
105
- if(rrdset_is_available_for_backends(st)) {
102
+ if(likely(backends_can_send_rrdset(options, st))) {
103
rrdset_rdlock(st);
104
105
+ if(unlikely(help || types))
106
+ buffer_strcat(wb, "\n");
107
+
108
// for each dimension
109
RRDDIM *rd;
110
rrddim_foreach_read(rd, st) {
src/backends.c
+1
-1
@@ -436,7 +436,7 @@ static inline int process_json_response(BUFFER *b) {
436
437
static SIMPLE_PATTERN *charts_pattern = NULL;
438
439
-static inline int backends_can_send_rrdset(uint32_t options, RRDSET *st) {
439
+inline int backends_can_send_rrdset(uint32_t options, RRDSET *st) {
440
if(unlikely(rrdset_flag_check(st, RRDSET_FLAG_BACKEND_IGNORE)))
441
return 0;
442
src/backends.h
+1
@@ -14,6 +14,7 @@ extern const char *backend_prefix;
14
15
extern void *backends_main(void *ptr);
16
17
+extern int backends_can_send_rrdset(uint32_t options, RRDSET *st);
18
extern uint32_t backend_parse_data_source(const char *source, uint32_t mode);
19
20
extern calculated_number backend_calculate_value_from_stored_data(