private void InitializeLogging() { const string format = "{Timestamp:HH:mm:ss.fff} [{Level}] {Pid} {Message}{NewLine}{Exception}"; var ouput = this.GetService <IVsOutputWindow, SVsOutputWindow>(); var sink = new OutputPaneEventSink(ouput, outputTemplate: format); Log.Logger = new LoggerConfiguration() .MinimumLevel.Verbose() .WriteTo.Sink(sink) .WriteTo.Trace(outputTemplate: format) .CreateLogger(); }
private void InitializeLogging() { const string format = "{Timestamp:HH:mm:ss.fff} [{Level}] {Pid} {Message}{NewLine}{Exception}"; var ouput = this.GetService <IVsOutputWindow, SVsOutputWindow>(); var settings = this.GetMefService <IAvaloniaVSSettings>(); var levelSwitch = new LoggingLevelSwitch() { MinimumLevel = settings.MinimumLogVerbosity }; settings.PropertyChanged += (s, e) => levelSwitch.MinimumLevel = settings.MinimumLogVerbosity; var sink = new OutputPaneEventSink(ouput, outputTemplate: format); Log.Logger = new LoggerConfiguration() .MinimumLevel.ControlledBy(levelSwitch) .WriteTo.Sink(sink, levelSwitch: levelSwitch) .WriteTo.Trace(outputTemplate: format) .CreateLogger(); }