sqlite_health.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. // SPDX-License-Identifier: GPL-3.0-or-later
  2. #ifndef NETDATA_SQLITE_HEALTH_H
  3. #define NETDATA_SQLITE_HEALTH_H
  4. #include "../../daemon/common.h"
  5. #include "sqlite3.h"
  6. struct sql_alert_transition_data;
  7. struct sql_alert_config_data;
  8. extern sqlite3 *db_meta;
  9. void sql_health_alarm_log_load(RRDHOST *host);
  10. void sql_health_alarm_log_update(RRDHOST *host, ALARM_ENTRY *ae);
  11. void sql_health_alarm_log_insert(RRDHOST *host, ALARM_ENTRY *ae);
  12. void sql_health_alarm_log_save(RRDHOST *host, ALARM_ENTRY *ae);
  13. void sql_health_alarm_log_cleanup(RRDHOST *host);
  14. int alert_hash_and_store_config(uuid_t hash_id, struct alert_config *cfg, int store_hash);
  15. void sql_aclk_alert_clean_dead_entries(RRDHOST *host);
  16. int sql_health_get_last_executed_event(RRDHOST *host, ALARM_ENTRY *ae, RRDCALC_STATUS *last_executed_status);
  17. void sql_health_alarm_log2json(RRDHOST *host, BUFFER *wb, uint32_t after, char *chart);
  18. int health_migrate_old_health_log_table(char *table);
  19. uint32_t sql_get_alarm_id(RRDHOST *host, STRING *chart, STRING *name, uint32_t *next_event_id, uuid_t *config_hash_id);
  20. void sql_alert_transitions(
  21. DICTIONARY *nodes,
  22. time_t after,
  23. time_t before,
  24. const char *context,
  25. const char *alert_name,
  26. const char *transition,
  27. void (*cb)(struct sql_alert_transition_data *, void *),
  28. void *data,
  29. bool debug);
  30. int sql_get_alert_configuration(
  31. DICTIONARY *configs,
  32. void (*cb)(struct sql_alert_config_data *, void *),
  33. void *data,
  34. bool debug __maybe_unused);
  35. bool sql_find_alert_transition(const char *transition, void (*cb)(const char *machine_guid, const char *context, time_t alert_id, void *data), void *data);
  36. #endif //NETDATA_SQLITE_HEALTH_H