summaryrefslogtreecommitdiffstats
path: root/daemon
diff options
context:
space:
mode:
authorEmmanuel Vasilakis <mrzammler@mm.st>2022-01-13 12:22:15 +0200
committerGitHub <noreply@github.com>2022-01-13 12:22:15 +0200
commitd229783de4f8476d540d1109953868db823e3a0a (patch)
tree2746a6025372ec6d48b7b16bc0a8b90dca27f49e /daemon
parent4f309da9d59214976ada2e339ee302d93fce6939 (diff)
Send the cloud protocol used to posthog (#11842)
* send analytics for cloud protocol used * add aclk-available-protocol to api/v1/info * fix build with --disable-cloud * remove aclk_legacy and aclk_ng define checks
Diffstat (limited to 'daemon')
-rw-r--r--daemon/analytics.c35
-rw-r--r--daemon/analytics.h3
-rwxr-xr-xdaemon/anonymous-statistics.sh.in20
3 files changed, 38 insertions, 20 deletions
diff --git a/daemon/analytics.c b/daemon/analytics.c
index 9408364e83..89091a4878 100644
--- a/daemon/analytics.c
+++ b/daemon/analytics.c
@@ -6,7 +6,7 @@ struct analytics_data analytics_data;
extern void analytics_exporting_connectors (BUFFER *b);
extern void analytics_exporting_connectors_ssl (BUFFER *b);
extern void analytics_build_info (BUFFER *b);
-extern int aclk_connected;
+extern int aclk_connected, aclk_use_new_cloud_arch;
struct collector {
char *plugin;
@@ -52,6 +52,7 @@ void analytics_log_data(void)
debug(D_ANALYTICS, "NETDATA_CONFIG_HOSTS_AVAILABLE : [%s]", analytics_data.netdata_config_hosts_available);
debug(D_ANALYTICS, "NETDATA_HOST_CLOUD_AVAILABLE : [%s]", analytics_data.netdata_host_cloud_available);
debug(D_ANALYTICS, "NETDATA_HOST_ACLK_AVAILABLE : [%s]", analytics_data.netdata_host_aclk_available);
+ debug(D_ANALYTICS, "NETDATA_HOST_ACLK_PROTOCOL : [%s]", analytics_data.netdata_host_aclk_protocol);
debug(D_ANALYTICS, "NETDATA_HOST_ACLK_IMPLEMENTATION : [%s]", analytics_data.netdata_host_aclk_implementation);
debug(D_ANALYTICS, "NETDATA_HOST_AGENT_CLAIMED : [%s]", analytics_data.netdata_host_agent_claimed);
debug(D_ANALYTICS, "NETDATA_HOST_CLOUD_ENABLED : [%s]", analytics_data.netdata_host_cloud_enabled);
@@ -97,6 +98,7 @@ void analytics_free_data(void)
freez(analytics_data.netdata_config_hosts_available);
freez(analytics_data.netdata_host_cloud_available);
freez(analytics_data.netdata_host_aclk_available);
+ freez(analytics_data.netdata_host_aclk_protocol);
freez(analytics_data.netdata_host_aclk_implementation);
freez(analytics_data.netdata_host_agent_claimed);
freez(analytics_data.netdata_host_cloud_enabled);
@@ -488,7 +490,7 @@ void analytics_alarms(void)
}
/*
- * Misc attributes to get (run from meta)
+ * Misc attributes to get (run from start)
*/
void analytics_misc(void)
{
@@ -500,13 +502,6 @@ void analytics_misc(void)
analytics_set_data_str(&analytics_data.netdata_host_aclk_implementation, "");
#endif
-#ifdef ENABLE_ACLK
- if (aclk_connected)
- analytics_set_data(&analytics_data.netdata_host_aclk_available, "true");
- else
-#endif
- analytics_set_data(&analytics_data.netdata_host_aclk_available, "false");
-
analytics_set_data(&analytics_data.netdata_config_exporting_enabled, appconfig_get_boolean(&exporting_config, CONFIG_SECTION_EXPORTING, "enabled", CONFIG_BOOLEAN_NO) ? "true" : "false");
analytics_set_data(&analytics_data.netdata_config_is_private_registry, "false");
@@ -523,6 +518,23 @@ void analytics_misc(void)
analytics_set_data(&analytics_data.netdata_config_is_private_registry, "true");
}
+void analytics_aclk(void)
+{
+#ifdef ENABLE_ACLK
+ if (aclk_connected) {
+ analytics_set_data(&analytics_data.netdata_host_aclk_available, "true");
+#ifdef ENABLE_NEW_CLOUD_PROTOCOL
+ if (aclk_use_new_cloud_arch)
+ analytics_set_data_str(&analytics_data.netdata_host_aclk_protocol, "New");
+ else
+#endif
+ analytics_set_data_str(&analytics_data.netdata_host_aclk_protocol, "Legacy");
+ }
+ else
+#endif
+ analytics_set_data(&analytics_data.netdata_host_aclk_available, "false");
+}
+
/*
* Get the meta data, called from the thread once after the original delay
* These are values that won't change during agent runtime, and therefore
@@ -548,6 +560,7 @@ void analytics_gather_mutable_meta_data(void)
analytics_alarms();
analytics_charts();
analytics_metrics();
+ analytics_aclk();
rrdhost_unlock(localhost);
@@ -889,6 +902,7 @@ void set_global_environment()
analytics_set_data(&analytics_data.netdata_host_cloud_available, "null");
analytics_set_data(&analytics_data.netdata_host_aclk_implementation, "null");
analytics_set_data(&analytics_data.netdata_host_aclk_available, "null");
+ analytics_set_data(&analytics_data.netdata_host_aclk_protocol, "null");
analytics_set_data(&analytics_data.netdata_host_agent_claimed, "null");
analytics_set_data(&analytics_data.netdata_host_cloud_enabled, "null");
analytics_set_data(&analytics_data.netdata_config_https_available, "null");
@@ -976,7 +990,7 @@ void send_statistics(const char *action, const char *action_result, const char *
sprintf(
command_to_run,
- "%s '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' ",
+ "%s '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' '%s' ",
as_script,
action,
action_result,
@@ -1010,6 +1024,7 @@ void send_statistics(const char *action, const char *action_result, const char *
analytics_data.netdata_config_hosts_available,
analytics_data.netdata_host_cloud_available,
analytics_data.netdata_host_aclk_available,
+ analytics_data.netdata_host_aclk_protocol,
analytics_data.netdata_host_aclk_implementation,
analytics_data.netdata_host_agent_claimed,
analytics_data.netdata_host_cloud_enabled,
diff --git a/daemon/analytics.h b/daemon/analytics.h
index 78ced981ee..343448cd71 100644
--- a/daemon/analytics.h
+++ b/daemon/analytics.h
@@ -29,7 +29,7 @@
},
/* Needed to calculate the space needed for parameters */
-#define ANALYTICS_NO_OF_ITEMS 38
+#define ANALYTICS_NO_OF_ITEMS 39
struct analytics_data {
char *netdata_config_stream_enabled;
@@ -61,6 +61,7 @@ struct analytics_data {
char *netdata_config_hosts_available;
char *netdata_host_cloud_available;
char *netdata_host_aclk_available;
+ char *netdata_host_aclk_protocol;
char *netdata_host_aclk_implementation;
char *netdata_host_agent_claimed;
char *netdata_host_cloud_enabled;
diff --git a/daemon/anonymous-statistics.sh.in b/daemon/anonymous-statistics.sh.in
index f49d19d09d..9167b7062d 100755
--- a/daemon/anonymous-statistics.sh.in
+++ b/daemon/anonymous-statistics.sh.in
@@ -54,15 +54,16 @@ NETDATA_CONFIG_IS_PARENT="${29}"
NETDATA_CONFIG_HOSTS_AVAILABLE="${30}"
NETDATA_HOST_CLOUD_AVAILABLE="${31}"
NETDATA_HOST_ACLK_AVAILABLE="${32}"
-NETDATA_HOST_ACLK_IMPLEMENTATION="${33}"
-NETDATA_HOST_AGENT_CLAIMED="${34}"
-NETDATA_HOST_CLOUD_ENABLED="${35}"
-NETDATA_CONFIG_HTTPS_AVAILABLE="${36}"
-NETDATA_INSTALL_TYPE="${37}"
-NETDATA_IS_PRIVATE_REGISTRY="${38}"
-NETDATA_USE_PRIVATE_REGISTRY="${39}"
-NETDATA_CONFIG_OOM_SCORE="${40}"
-NETDATA_PREBUILT_DISTRO="${41}"
+NETDATA_HOST_ACLK_PROTOCOL="${33}"
+NETDATA_HOST_ACLK_IMPLEMENTATION="${34}"
+NETDATA_HOST_AGENT_CLAIMED="${35}"
+NETDATA_HOST_CLOUD_ENABLED="${36}"
+NETDATA_CONFIG_HTTPS_AVAILABLE="${37}"
+NETDATA_INSTALL_TYPE="${38}"
+NETDATA_IS_PRIVATE_REGISTRY="${39}"
+NETDATA_USE_PRIVATE_REGISTRY="${40}"
+NETDATA_CONFIG_OOM_SCORE="${41}"
+NETDATA_PREBUILT_DISTRO="${42}"
# define body of request to be sent
@@ -147,6 +148,7 @@ REQ_BODY="$(cat << EOF
"host_cloud_enabled": ${NETDATA_HOST_CLOUD_ENABLED},
"host_agent_claimed": ${NETDATA_HOST_AGENT_CLAIMED},
"host_aclk_available": ${NETDATA_HOST_ACLK_AVAILABLE},
+ "host_aclk_protocol": ${NETDATA_HOST_ACLK_PROTOCOL},
"host_aclk_implementation": ${NETDATA_HOST_ACLK_IMPLEMENTATION},
"mirrored_host_count": ${NETDATA_MIRRORED_HOST_COUNT},
"mirrored_hosts_reachable": ${NETDATA_MIRRORED_HOSTS_REACHABLE},