public static void OnAppExit(Version version) { if (!Config.Instance.GoogleAnalytics) { return; } var sessionDuration = (DateTime.Now - _appStartTime).TotalSeconds; var point = new InfluxPointBuilder("hdt_app_exit") .Tag("version", version.ToVersionString(true)) .Tag("new", _new) .Field("session_duration_seconds", (int)sessionDuration); #if (SQUIRREL) point.Tag("squirrel", true); #else point.Tag("squirrel", false); #endif if (_pctHsReplayDataTotal.HasValue) { point.Field("pct_hsreplay_data_total", _pctHsReplayDataTotal.Value); } if (_pctHsReplayData.HasValue) { point.Field("pct_hsreplay_data_last14d", _pctHsReplayData.Value); } WritePoint(point.Build()); }
public static void OnAppStart(Version version, bool isNew, bool authenticated, bool premium, int startupDuration, int numPlugins) { if (!Config.Instance.GoogleAnalytics) { return; } _appStartTime = DateTime.Now; _new = isNew; var point = new InfluxPointBuilder("hdt_app_start") .Tag("version", version.ToVersionString(true)) .Tag("new", isNew) .Tag("authenticated", authenticated) .Tag("premium", premium) .Tag("collection_syncing", Config.Instance.SyncCollection) .Tag("collections_uploaded", Account.Instance.CollectionState.Count) .Tag("auto_upload", Config.Instance.HsReplayAutoUpload) .Tag("lang_card", Config.Instance.SelectedLanguage) .Tag("lang_ui", Config.Instance.Localization.ToString()) .Field("num_plugins", numPlugins) .Field("startup_duration", startupDuration); #if (SQUIRREL) point.Tag("squirrel", true); #else point.Tag("squirrel", false); #endif WritePoint(point.Build()); }
public static void OnOAuthLogout() { if (!Config.Instance.GoogleAnalytics) { return; } var point = new InfluxPointBuilder("hdt_oauth_logout"); WritePoint(point.Build()); }
public static void OnCollectionSynced(bool success) { if (!Config.Instance.GoogleAnalytics) { return; } var point = new InfluxPointBuilder("hdt_collection_syncing_uploaded") .Tag("success", success); WritePoint(point.Build()); }
public static void OnCollectionSyncingEnabled(bool enabled) { if (!Config.Instance.GoogleAnalytics) { return; } var point = new InfluxPointBuilder("hdt_collection_syncing_enabled_changed") .Tag("enabled", enabled); WritePoint(point.Build()); }
public static void OnBlizzardAccountClaimed(bool success) { if (!Config.Instance.GoogleAnalytics) { return; } var point = new InfluxPointBuilder("hdt_collection_syncing_account_claimed") .Tag("success", success); WritePoint(point.Build()); }
public static void OnCollectionSyncingBannerClosed() { if (!Config.Instance.GoogleAnalytics) { return; } var point = new InfluxPointBuilder("hdt_collection_syncing_banner_interaction") .Tag("type", "close"); WritePoint(point.Build()); }
public static void OnPluginLoadingError(IPlugin plugin) { if (!Config.Instance.GoogleAnalytics) { return; } var point = new InfluxPointBuilder("hdt_plugin_loading_error", false) .Tag("name", plugin.Name) .Tag("version", plugin.Version.ToVersionString()); WritePoint(point.Build()); }
public static void OnAppStart(Version version, LoginType loginType, bool isNew) { if(!Config.Instance.GoogleAnalytics) return; var point = new InfluxPointBuilder("hdt_app_start").Tag("version", version.ToVersionString()).Tag("login_type", loginType).Tag("new", isNew); #if(SQUIRREL) point.Tag("squirrel", true); #else point.Tag("squirrel", false); #endif WritePoint(point.Build()); }
public static void OnOAuthLoginComplete(HSReplayNetHelper.AuthenticationErrorType error) { if (!Config.Instance.GoogleAnalytics) { return; } var point = new InfluxPointBuilder("hdt_oauth_login") .Tag("error", error) .Field("duration_ms", (int)(DateTime.Now - _oAuthInitiated).TotalMilliseconds); WritePoint(point.Build()); }
public static void OnPluginLoaded(IPlugin plugin, TimeSpan startupTime) { if (!Config.Instance.GoogleAnalytics) { return; } var point = new InfluxPointBuilder("hdt_plugin_loaded", false) .Tag("name", plugin.Name) .Tag("version", plugin.Version.ToVersionString()) .Field("startup_time", (int)startupTime.TotalMilliseconds); WritePoint(point.Build()); }
public static void OnCollectionSyncingBannerClicked(bool authenticated, bool collectionSynced) { if (!Config.Instance.GoogleAnalytics) { return; } var point = new InfluxPointBuilder("hdt_collection_syncing_banner_interaction") .Tag("type", "click") .Tag("authenticated", authenticated) .Tag("collection_synced", collectionSynced); WritePoint(point.Build()); }
public static void OnAppStart(Version version, LoginType loginType, bool isNew) { if (!Config.Instance.GoogleAnalytics) { return; } var point = new InfluxPointBuilder("hdt_app_start").Tag("version", version.ToVersionString()).Tag("login_type", loginType).Tag("new", isNew); #if (SQUIRREL) point.Tag("squirrel", true); #else point.Tag("squirrel", false); #endif WritePoint(point.Build()); }
public static void OnAppStart(Version version, LoginType loginType, bool isNew, int startupDuration) { if(!Config.Instance.GoogleAnalytics) return; var point = new InfluxPointBuilder("hdt_app_start") .Tag("version", version.ToVersionString()).Tag("login_type", loginType).Tag("new", isNew) .Tag("auto_upload", Config.Instance.HsReplayAutoUpload) .Field("startup_duration", startupDuration); #if(SQUIRREL) point.Tag("squirrel", true); #else point.Tag("squirrel", false); #endif WritePoint(point.Build()); }
public static void OnAppStart(Version version, LoginType loginType, bool isNew, int startupDuration) { if (!Config.Instance.GoogleAnalytics) { return; } var point = new InfluxPointBuilder("hdt_app_start") .Tag("version", version.ToVersionString()).Tag("login_type", loginType).Tag("new", isNew) .Tag("auto_upload", Config.Instance.HsReplayAutoUpload).Field("user", Config.Instance.Id) .Field("startup_duration", startupDuration); #if (SQUIRREL) point.Tag("squirrel", true); #else point.Tag("squirrel", false); #endif WritePoint(point.Build()); }
public static void OnBobsBuddySimulationCompleted(CombatResult result, TestOutput output, int turn) { if (!Config.Instance.GoogleAnalytics) { return; } var point = new InfluxPointBuilder("hdt_bb_combat_result_v2") .Tag("result", result.ToString()) .Tag("turn", turn) .Tag("exit_condition", output.myExitCondition.ToString()) .Tag("thread_count", BobsBuddyInvoker.ThreadCount) .Field("iterations", output.simulationCount) .Field("result_win", result == CombatResult.Win ? 1 : 0) .Field("result_tie", result == CombatResult.Tie ? 1 : 0) .Field("result_loss", result == CombatResult.Loss ? 1 : 0) .Field("win_rate", output.winRate * 100) .Field("tie_rate", output.tieRate * 100) .Field("loss_rate", output.lossRate * 100); _queue.Add(point.Build()); }
public static void OnAppStart(Version version, bool isNew, int startupDuration, int numPlugins) { if (!Config.Instance.GoogleAnalytics) { return; } _appStartTime = DateTime.Now; _new = isNew; var point = new InfluxPointBuilder("hdt_app_start") .Tag("version", version.ToVersionString(true)) .Tag("new", isNew) .Tag("auto_upload", Config.Instance.HsReplayAutoUpload) .Field("num_plugins", numPlugins) .Field("startup_duration", startupDuration); #if (SQUIRREL) point.Tag("squirrel", true); #else point.Tag("squirrel", false); #endif WritePoint(point.Build()); }
public static void OnAppExit(Version version) { if (!Config.Instance.GoogleAnalytics) { return; } var sessionDuration = (DateTime.Now - _appStartTime).TotalSeconds; var point = new InfluxPointBuilder("hdt_app_exit") .Tag("version", version.ToVersionString(true)) .Tag("new", _new) .Tag("stats_window_used", Core.StatsOverviewInitialized) .Field("session_duration_seconds", (int)sessionDuration); #if (SQUIRREL) point.Tag("squirrel", true); #else point.Tag("squirrel", false); #endif if (_pctHsReplayDataTotal.HasValue) { point.Field("pct_hsreplay_data_total", _pctHsReplayDataTotal.Value); } if (_pctHsReplayData.HasValue) { point.Field("pct_hsreplay_data_last14d", _pctHsReplayData.Value); } if (_lastMainWindowActivation != null) { OnMainWindowDeactivated(); } point.Field("window_activations", MainWindowActivations.Count); point.Field("window_active_duration", (int)MainWindowActivations.Average()); WritePoint(point.Build()); }