diff options
author | Vladimir Kobal <vlad@prokk.net> | 2021-01-11 17:23:21 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-11 17:23:21 +0200 |
commit | 503629f6e9ca29b8a6abd5bebd5de52b50a14432 (patch) | |
tree | 1e0249d0ada19fce1d520680be5c829c7cddd358 /exporting/read_config.c | |
parent | 5c847ea96d218635ca19253bfbf98114c35c325a (diff) |
Fix data source option for Prometheus web API in exporting configuration (#10397)
Diffstat (limited to 'exporting/read_config.c')
-rw-r--r-- | exporting/read_config.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/exporting/read_config.c b/exporting/read_config.c index 0cba4ad2c4..995ba578f8 100644 --- a/exporting/read_config.c +++ b/exporting/read_config.c @@ -238,9 +238,18 @@ struct engine *read_exporting_config() prometheus_exporter_instance->config.update_every = prometheus_config_get_number(EXPORTING_UPDATE_EVERY_OPTION_NAME, EXPORTING_UPDATE_EVERY_DEFAULT); - prometheus_exporter_instance->config.options |= - global_backend_options & - (EXPORTING_SOURCE_DATA_AS_COLLECTED | EXPORTING_SOURCE_DATA_AVERAGE | EXPORTING_SOURCE_DATA_SUM); + // wait for backend subsystem to be initialized + for (int retries = 0; !global_backend_source && retries < 1000; retries++) + sleep_usec(10000); + + if (!global_backend_source) + global_backend_source = "average"; + + prometheus_exporter_instance->config.options |= global_backend_options & EXPORTING_OPTIONS_SOURCE_BITS; + + char *data_source = prometheus_config_get("data source", global_backend_source); + prometheus_exporter_instance->config.options = + exporting_parse_data_source(data_source, prometheus_exporter_instance->config.options); if (prometheus_config_get_boolean( "send names instead of ids", global_backend_options & EXPORTING_OPTION_SEND_NAMES)) |