sqlite_aclk_alert.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435
  1. // SPDX-License-Identifier: GPL-3.0-or-later
  2. #ifndef NETDATA_SQLITE_ACLK_ALERT_H
  3. #define NETDATA_SQLITE_ACLK_ALERT_H
  4. extern sqlite3 *db_meta;
  5. #define SEND_REMOVED_AFTER_HEALTH_LOOPS 3
  6. #define SEND_CHECKPOINT_AFTER_HEALTH_LOOPS 4
  7. struct proto_alert_status {
  8. int alert_updates;
  9. uint64_t pending_min_sequence_id;
  10. uint64_t pending_max_sequence_id;
  11. uint64_t last_submitted_sequence_id;
  12. };
  13. int aclk_add_alert_event(struct aclk_sync_host_config *wc, struct aclk_database_cmd cmd);
  14. void aclk_push_alert_event(struct aclk_sync_host_config *wc);
  15. void aclk_send_alarm_configuration (char *config_hash);
  16. int aclk_push_alert_config_event(char *node_id, char *config_hash);
  17. void aclk_start_alert_streaming(char *node_id, bool resets);
  18. void sql_queue_removed_alerts_to_aclk(RRDHOST *host);
  19. void sql_process_queue_removed_alerts_to_aclk(char *node_id);
  20. void aclk_send_alarm_checkpoint(char *node_id, char *claim_id);
  21. void aclk_push_alarm_checkpoint(RRDHOST *host);
  22. void aclk_push_alert_snapshot_event(char *node_id);
  23. void aclk_process_send_alarm_snapshot(char *node_id, char *claim_id, char *snapshot_uuid);
  24. int get_proto_alert_status(RRDHOST *host, struct proto_alert_status *proto_alert_status);
  25. int sql_queue_alarm_to_aclk(RRDHOST *host, ALARM_ENTRY *ae, int skip_filter);
  26. void aclk_push_alert_events_for_all_hosts(void);
  27. #endif //NETDATA_SQLITE_ACLK_ALERT_H