diff options
author | Stelios Fragkakis <52996999+stelfrag@users.noreply.github.com> | 2023-10-29 02:08:22 +0300 |
---|---|---|
committer | Tasos Katsoulas <12612986+tkatsoulas@users.noreply.github.com> | 2023-10-30 13:55:09 +0200 |
commit | 750ca8ef5393aee927cc59c2c910f45c7c14b703 (patch) | |
tree | 3c2c99290921deeca78d367867dc5481d7da454a | |
parent | 240f9e71512e9891b44aaf3fcd2db5e3185e7791 (diff) |
Marked charts exposed when labels change
-rw-r--r-- | collectors/systemd-journal.plugin/systemd-journal.c | 13 | ||||
-rw-r--r-- | database/rrdset.c | 1 |
2 files changed, 10 insertions, 4 deletions
diff --git a/collectors/systemd-journal.plugin/systemd-journal.c b/collectors/systemd-journal.plugin/systemd-journal.c index c2bd98e7db..877371120f 100644 --- a/collectors/systemd-journal.plugin/systemd-journal.c +++ b/collectors/systemd-journal.plugin/systemd-journal.c @@ -647,7 +647,7 @@ static bool netdata_systemd_filtering_by_journal(sd_journal *j, FACETS *facets, size_t failures = 0; size_t filters_added = 0; - SD_JOURNAL_FOREACH_FIELD(j, field) { + SD_JOURNAL_FOREACH_FIELD(j, field) { // for each key bool interesting; if(fqs->data_only) @@ -660,7 +660,7 @@ static bool netdata_systemd_filtering_by_journal(sd_journal *j, FACETS *facets, bool added_this_key = false; size_t added_values = 0; - SD_JOURNAL_FOREACH_UNIQUE(j, data, data_length) { + SD_JOURNAL_FOREACH_UNIQUE(j, data, data_length) { // for each value of the key const char *key, *value; size_t key_length, value_length; @@ -673,19 +673,24 @@ static bool netdata_systemd_filtering_by_journal(sd_journal *j, FACETS *facets, continue; if(added_keys && !added_this_key) { - if(sd_journal_add_conjunction(j) < 0) + if(sd_journal_add_conjunction(j) < 0) // key AND key AND key failures++; added_this_key = true; added_keys++; } else if(added_values) - if(sd_journal_add_disjunction(j) < 0) + if(sd_journal_add_disjunction(j) < 0) // value OR value OR value failures++; if(sd_journal_add_match(j, data, data_length) < 0) failures++; + if(!added_keys) { + added_keys++; + added_this_key = true; + } + added_values++; filters_added++; } diff --git a/database/rrdset.c b/database/rrdset.c index cf8b9ef853..92386f45e0 100644 --- a/database/rrdset.c +++ b/database/rrdset.c @@ -389,6 +389,7 @@ static void rrdset_react_callback(const DICTIONARY_ITEM *item __maybe_unused, vo } rrdset_flag_set(st, RRDSET_FLAG_METADATA_UPDATE); rrdhost_flag_set(st->rrdhost, RRDHOST_FLAG_METADATA_UPDATE); + rrdset_flag_clear(st, RRDSET_FLAG_UPSTREAM_EXPOSED); } rrdcontext_updated_rrdset(st); |