Пример #1
0
        private void ReportLocalRConfiguration()
        {
            // Report local R installation
            string rInstallPath = new RInstallation().GetRInstallPath();

            TelemetryService.ReportEvent(TelemetryArea.Configuration, ConfigurationEvents.RInstallPath, rInstallPath);

            string rClientPath = MicrosoftRClient.GetRClientPath();

            if (rClientPath != null)
            {
                TelemetryService.ReportEvent(TelemetryArea.Configuration, ConfigurationEvents.RClientFound);
                if (rInstallPath != null && rInstallPath.EqualsIgnoreCase(rClientPath))
                {
                    TelemetryService.ReportEvent(TelemetryArea.Configuration, ConfigurationEvents.RClientActive);
                }
            }

            var rEngines = GetRSubfolders("R");

            foreach (var s in rEngines)
            {
                TelemetryService.ReportEvent(TelemetryArea.Configuration, ConfigurationEvents.REngine, s);
            }

            var rroEngines = GetRSubfolders("RRO");

            foreach (var s in rroEngines)
            {
                TelemetryService.ReportEvent(TelemetryArea.Configuration, ConfigurationEvents.RROEngine, s);
            }

            var mroEngines = GetRSubfolders("MRO");

            foreach (var s in mroEngines)
            {
                TelemetryService.ReportEvent(TelemetryArea.Configuration, ConfigurationEvents.MROEngine, s);
            }

            if (_packageIndex != null)
            {
                foreach (var p in _packageIndex.Packages)
                {
                    TelemetryService.ReportEvent(TelemetryArea.Configuration, ConfigurationEvents.RPackages, p.Name.GetMD5Hash());
                }
            }
        }