private void SetGlobalContext(int uiCultureLCID, int cultureLCID, string serializedSession) { // set global telemetry session var session = GetTelemetrySession(serializedSession); if (session == null) { return; } EnsureCulture(uiCultureLCID, cultureLCID); // set roslyn loggers WatsonReporter.SetTelemetrySession(session); RoslynLogger.SetLogger(AggregateLogger.Create(new VSTelemetryLogger(session), RoslynLogger.GetLogger())); // set both handler as NFW FatalError.Handler = WatsonReporter.Report; FatalError.NonFatalHandler = WatsonReporter.Report; // start performance reporter var diagnosticAnalyzerPerformanceTracker = SolutionService.PrimaryWorkspace.Services.GetService <IPerformanceTrackerService>(); if (diagnosticAnalyzerPerformanceTracker != null) { var globalOperationNotificationService = SolutionService.PrimaryWorkspace.Services.GetService <IGlobalOperationNotificationService>(); _performanceReporter = new PerformanceReporter(Logger, diagnosticAnalyzerPerformanceTracker, globalOperationNotificationService, s_reportInterval, _shutdownCancellationSource.Token); } }
private static void SetGlobalContext(string serializedSession) { // set global telemetry session var session = GetTelemetrySession(serializedSession); if (session == null) { return; } // set roslyn loggers WatsonReporter.SetTelemetrySession(session); RoslynLogger.SetLogger(AggregateLogger.Create(new VSTelemetryLogger(session), RoslynLogger.GetLogger())); // set both handler as NFW FatalError.Handler = WatsonReporter.Report; FatalError.NonFatalHandler = WatsonReporter.Report; }