Esempio n. 1
0
        private void InitializeErrorHandler()
        {
            executorFactory = new FileLogBatchFactory(TimeSpan.FromSeconds(30));

            logService = new IsolatedLogService();

            logFactory = new DefaultLogFactory()
                         .AddSerializer(AddDisposable(new FileLogSerializer(new DefaultLogFormatter(), () => settings.LogLevel, executorFactory)))
                         .AddSerializer(AddDisposable(new ErrorLogSerializer(new DefaultLogFormatter(), executorFactory)))
#if DEBUG
                         .AddConsole()
#endif
            ;

            ILog rootLog = logFactory.Scope("Root");

            ExceptionHandlerBuilder builder = new ExceptionHandlerBuilder();
            builder
            .Filter <UnauthorizedAccessException>()
            .Handler(new UnauthorizedAccessExceptionHandler(settings, this, () => { mainWindow?.Close(); mainFactory.ClearService(); }));

            builder
            .Filter(e => !(e is UnauthorizedAccessException))
            .Handler(new LogExceptionHandler(rootLog))
            .Handler(new MessageBoxExceptionHandler(this));

            exceptionHandler = builder;
        }
Esempio n. 2
0
 internal ConfigurationViewModelFactory(IApplicationLoader mainApplicationLoader, ShortcutService shortcutService, DefaultRunHotKeyService runHotKey, ISettingsService settingsService, ISettings settings, ISettingsFactory settingsFactory, INavigator navigator, ILogService logProvider, IDiagnosticService searchDiagnostics, FileLogBatchFactory executorFactory)
 {
     Ensure.NotNull(mainApplicationLoader, "mainApplicationLoader");
     Ensure.NotNull(shortcutService, "shortcutService");
     Ensure.NotNull(runHotKey, "runHotKey");
     Ensure.NotNull(settingsService, "settingsService");
     Ensure.NotNull(settings, "settings");
     Ensure.NotNull(settingsFactory, "settingsFactory");
     Ensure.NotNull(navigator, "navigator");
     Ensure.NotNull(logProvider, "logProvider");
     Ensure.NotNull(searchDiagnostics, "searchDiagnostics");
     Ensure.NotNull(executorFactory, "executorFactory");
     this.mainApplicationLoader = mainApplicationLoader;
     this.shortcutService       = shortcutService;
     this.runHotKey             = runHotKey;
     this.settingsService       = settingsService;
     this.settings          = settings;
     this.settingsFactory   = settingsFactory;
     this.navigator         = navigator;
     this.logProvider       = logProvider;
     this.searchDiagnostics = searchDiagnostics;
     this.executorFactory   = executorFactory;
 }
Esempio n. 3
0
 public ErrorLogSerializer(ILogFormatter formatter, FileLogBatchFactory executorFactory)
     : base(formatter, () => LogLevel.Error, executorFactory)
 {
 }
Esempio n. 4
0
        public TroubleshootViewModel(ILogService logProvider, IDiagnosticService searchDiagnostics, FileLogBatchFactory executorFactory)
        {
            Ensure.NotNull(logProvider, "logProvider");
            this.logProvider = logProvider;

            Logs                = new ObservableCollection <LogModel>(logProvider.GetFileNames());
            OpenLog             = new OpenLogCommand(logProvider);
            OpenIsolatedFolder  = new OpenIsolatedFolderCommand();
            OpenLastSearchFiles = new OpenLastSearchFilesCommand(searchDiagnostics);
            FlushLogMessages    = new DelegateCommand(executorFactory.Flush);
        }