diff options
author | Emmanuel Vasilakis <mrzammler@mm.st> | 2023-07-12 11:24:16 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-12 11:24:16 +0300 |
commit | 38b38993a6547aa33a0591a7ce3e7461c197e893 (patch) | |
tree | 76d483877e6770f11f429d14a49f21af51503d39 /streaming | |
parent | b1bb7bd449af0567e2edabcefd325fffaea0a3fe (diff) |
Keep health log history in seconds (#15314)
* rebase
* changes queries to delete based on when
* readme changes
* no need to do migration
* wip, protect un-updated events from cleanup
* remove index on when_key
* fix query for claimed cleanup
* if set less than minimum, set minimum
* fix query
* correct config assign
Diffstat (limited to 'streaming')
-rw-r--r-- | streaming/README.md | 1 | ||||
-rw-r--r-- | streaming/receiver.c | 6 | ||||
-rw-r--r-- | streaming/rrdpush.h | 1 | ||||
-rw-r--r-- | streaming/stream.conf | 6 |
4 files changed, 14 insertions, 0 deletions
diff --git a/streaming/README.md b/streaming/README.md index bf11f32e47..370186acc2 100644 --- a/streaming/README.md +++ b/streaming/README.md @@ -55,6 +55,7 @@ node**. This file is automatically generated by Netdata the first time it is sta | [`default memory mode`](#default-memory-mode) | `ram` | The [database](https://github.com/netdata/netdata/blob/master/database/README.md) to use for all nodes using this `API_KEY`. Valid settings are `dbengine`, `map`, `save`, `ram`, or `none`. [Read more →](#default-memory-mode) | | `health enabled by default` | `auto` | Whether alarms and notifications should be enabled for nodes using this `API_KEY`. `auto` enables alarms when the child is connected. `yes` enables alarms always, and `no` disables alarms. | | `default postpone alarms on connect seconds` | `60` | Postpone alarms and notifications for a period of time after the child connects. | +| `default health log history` | `432000` | History of health log events (in seconds) kept in the database. | | `default proxy enabled` | ` ` | Route metrics through a proxy. | | `default proxy destination` | ` ` | Space-separated list of `IP:PORT` for proxies. | | `default proxy api key` | ` ` | The `API_KEY` of the proxy. | diff --git a/streaming/receiver.c b/streaming/receiver.c index 2a81b824c9..c827ca7a1d 100644 --- a/streaming/receiver.c +++ b/streaming/receiver.c @@ -411,6 +411,8 @@ static bool rrdhost_set_receiver(RRDHOST *host, struct receiver_state *rpt) { } } + host->health_log.health_log_history = rpt->config.alarms_history; + // this is a test // if(rpt->hops <= host->sender->hops) // rrdpush_sender_thread_stop(host, "HOPS MISMATCH", false); @@ -552,6 +554,7 @@ static void rrdpush_receive(struct receiver_state *rpt) rpt->config.health_enabled = (int)default_health_enabled; rpt->config.alarms_delay = 60; + rpt->config.alarms_history = HEALTH_LOG_DEFAULT_HISTORY; rpt->config.rrdpush_enabled = (int)default_rrdpush_enabled; rpt->config.rrdpush_destination = default_rrdpush_destination; @@ -588,6 +591,9 @@ static void rrdpush_receive(struct receiver_state *rpt) rpt->config.alarms_delay = appconfig_get_number(&stream_config, rpt->key, "default postpone alarms on connect seconds", rpt->config.alarms_delay); rpt->config.alarms_delay = appconfig_get_number(&stream_config, rpt->machine_guid, "postpone alarms on connect seconds", rpt->config.alarms_delay); + rpt->config.alarms_history = appconfig_get_number(&stream_config, rpt->key, "default health log history", rpt->config.alarms_history); + rpt->config.alarms_history = appconfig_get_number(&stream_config, rpt->machine_guid, "health log history", rpt->config.alarms_history); + rpt->config.rrdpush_enabled = appconfig_get_boolean(&stream_config, rpt->key, "default proxy enabled", rpt->config.rrdpush_enabled); rpt->config.rrdpush_enabled = appconfig_get_boolean(&stream_config, rpt->machine_guid, "proxy enabled", rpt->config.rrdpush_enabled); diff --git a/streaming/rrdpush.h b/streaming/rrdpush.h index 6781f1cfe3..73bd438c9d 100644 --- a/streaming/rrdpush.h +++ b/streaming/rrdpush.h @@ -400,6 +400,7 @@ struct receiver_state { int update_every; int health_enabled; // CONFIG_BOOLEAN_YES, CONFIG_BOOLEAN_NO, CONFIG_BOOLEAN_AUTO time_t alarms_delay; + uint32_t alarms_history; int rrdpush_enabled; char *rrdpush_api_key; // DONT FREE - it is allocated in appconfig char *rrdpush_send_charts_matching; // DONT FREE - it is allocated in appconfig diff --git a/streaming/stream.conf b/streaming/stream.conf index aa38e6a626..94e94cab7e 100644 --- a/streaming/stream.conf +++ b/streaming/stream.conf @@ -155,6 +155,9 @@ # postpone alarms for a short period after the sender is connected default postpone alarms on connect seconds = 60 + # seconds of health log events to keep + #default health log history = 432000 + # need to route metrics differently? set these. # the defaults are the ones at the [stream] section (above) #default proxy enabled = yes | no @@ -223,6 +226,9 @@ # postpone alarms when the sender connects postpone alarms on connect seconds = 60 + # seconds of health log events to keep + #health log history = 432000 + # need to route metrics differently? # the defaults are the ones at the [API KEY] section #proxy enabled = yes | no |