summaryrefslogtreecommitdiffstats
path: root/database/sqlite/sqlite_aclk_chart.h
diff options
context:
space:
mode:
authorStelios Fragkakis <52996999+stelfrag@users.noreply.github.com>2021-09-21 22:37:12 +0300
committerGitHub <noreply@github.com>2021-09-21 22:37:12 +0300
commit2085a518c3fa415b9e4d08002c720465417c7c14 (patch)
treece9a9f71d1c39ae3a9dec6c034d55404d4a6f18b /database/sqlite/sqlite_aclk_chart.h
parent3ab85b94be68cf41184e5c3916feda34e544ddd4 (diff)
Add chart message support for ACLK new architecture (#11447)
Diffstat (limited to 'database/sqlite/sqlite_aclk_chart.h')
-rw-r--r--database/sqlite/sqlite_aclk_chart.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/database/sqlite/sqlite_aclk_chart.h b/database/sqlite/sqlite_aclk_chart.h
new file mode 100644
index 0000000000..aa5ab842c1
--- /dev/null
+++ b/database/sqlite/sqlite_aclk_chart.h
@@ -0,0 +1,40 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
+#ifndef NETDATA_SQLITE_ACLK_CHART_H
+#define NETDATA_SQLITE_ACLK_CHART_H
+
+
+typedef enum payload_type {
+ ACLK_PAYLOAD_CHART,
+ ACLK_PAYLOAD_DIMENSION,
+ ACLK_PAYLOAD_DIMENSION_ROTATED
+} ACLK_PAYLOAD_TYPE;
+
+extern sqlite3 *db_meta;
+
+#ifndef RRDSET_MINIMUM_LIVE_COUNT
+#define RRDSET_MINIMUM_LIVE_COUNT 3
+#endif
+
+//void aclk_status_chart_event(struct aclk_database_worker_config *wc, struct aclk_database_cmd cmd);
+extern int sql_queue_chart_to_aclk(RRDSET *st);
+extern int sql_queue_dimension_to_aclk(RRDDIM *rd);
+extern void sql_create_aclk_table(RRDHOST *host, uuid_t *host_uuid, uuid_t *node_id);
+extern void sql_queue_alarm_to_aclk(RRDHOST *host, ALARM_ENTRY *ae);
+int aclk_add_chart_event(struct aclk_database_worker_config *wc, struct aclk_database_cmd cmd);
+int aclk_add_dimension_event(struct aclk_database_worker_config *wc, struct aclk_database_cmd cmd);
+int aclk_add_offline_dimension_event(struct aclk_database_worker_config *wc, char *node_id, char *chart_name, uuid_t *dim_uuid, char *rd_id, char *rd_name, time_t first_entry_t, time_t last_entry_t);
+int aclk_send_chart_config(struct aclk_database_worker_config *wc, struct aclk_database_cmd cmd);
+void aclk_ack_chart_sequence_id(char *node_id, uint64_t last_sequence_id);
+void aclk_get_chart_config(char **hash_id_list);
+void aclk_send_chart_event(struct aclk_database_worker_config *wc, struct aclk_database_cmd cmd);
+void aclk_reset_chart_event(char *node_id, uint64_t last_sequence_id);
+void aclk_start_streaming(char *node_id, uint64_t seq_id, time_t created_at, uint64_t batch_id);
+void sql_chart_deduplicate(struct aclk_database_worker_config *wc, struct aclk_database_cmd cmd);
+void sql_check_dimension_state(struct aclk_database_worker_config *wc, struct aclk_database_cmd cmd);
+void sql_check_rotation_state(struct aclk_database_worker_config *wc, struct aclk_database_cmd cmd);
+void sql_get_last_chart_sequence(struct aclk_database_worker_config *wc, struct aclk_database_cmd cmd);
+void aclk_receive_chart_reset(struct aclk_database_worker_config *wc, struct aclk_database_cmd cmd);
+void aclk_receive_chart_ack(struct aclk_database_worker_config *wc, struct aclk_database_cmd cmd);
+void sql_update_metric_statistics(struct aclk_database_worker_config *wc, struct aclk_database_cmd cmd);
+#endif //NETDATA_SQLITE_ACLK_CHART_H