static StartupMetadata GetStartupMetadata(StartupInfo startupInfo, IPlatformTelemetryDetails platformDetails, Dictionary <string, long> timings)
        {
            var         assetType   = StartupAssetType.FromStartupInfo(startupInfo);
            StartupType startupType = StartupType.Normal;

            if (startupInfo.Restarted && !IdeApp.IsInitialRunAfterUpgrade)
            {
                startupType = StartupType.ConfigurationChange;                 // Assume a restart without upgrading was the result of a config change
            }
            else if (IdeApp.IsInitialRun)
            {
                startupType = StartupType.FirstLaunch;
            }
            else if (IdeApp.IsInitialRunAfterUpgrade)
            {
                startupType = StartupType.FirstLaunchAfterUpgrade;
            }
            else if (Debugger.IsAttached)
            {
                startupType = StartupType.DebuggerPresent;
            }

            return(new StartupMetadata {
                CorrectedStartupTime = startupTimer.ElapsedMilliseconds,
                StartupType = Convert.ToInt32(startupType),
                AssetTypeId = assetType.Id,
                AssetTypeName = assetType.Name,
                IsInitialRun = IdeApp.IsInitialRun,
                IsInitialRunAfterUpgrade = IdeApp.IsInitialRunAfterUpgrade,
                TimeSinceMachineStart = platformDetails.TimeSinceMachineStart.Seconds,
                TimeSinceLogin = platformDetails.TimeSinceLogin.Seconds,
                Timings = timings
            });
        }
Exemple #2
0
        static Dictionary <string, string> GetStartupMetadata(StartupInfo startupInfo)
        {
            var metadata = new Dictionary <string, string> ();

            metadata ["CorrectedStartupTime"] = startupTimer.ElapsedMilliseconds.ToString();
            metadata ["StartupType"]          = "0";

            var assetType = StartupAssetType.FromStartupInfo(startupInfo);

            metadata ["AssetTypeId"]   = assetType.Id.ToString();
            metadata ["AssetTypeName"] = assetType.Name;

            return(metadata);
        }
Exemple #3
0
        static StartupMetadata GetStartupMetadata(StartupInfo startupInfo, IPlatformTelemetryDetails platformDetails)
        {
            var assetType = StartupAssetType.FromStartupInfo(startupInfo);

            return(new StartupMetadata {
                CorrectedStartupTime = startupTimer.ElapsedMilliseconds,
                StartupType = 0,
                AssetTypeId = assetType.Id.ToString(),
                AssetTypeName = assetType.Name,
                IsInitialRun = IdeApp.IsInitialRun,
                IsInitialRunAfterUpgrade = IdeApp.IsInitialRunAfterUpgrade,
                TimeSinceMachineStart = platformDetails.TimeSinceMachineStart.Seconds,
                TimeSinceLogin = platformDetails.TimeSinceLogin.Seconds
            });
        }