public ILogger CreateLogger(string categoryName) { ConsoleLogger logger = (ConsoleLogger)_innerProvider.CreateLogger(categoryName); logger.Console = new LoggerConsole(); return(logger); }
private DynamicConsoleLogger CreateLoggerImplementation(string name) { var logger = _delegate.CreateLogger(name) as ConsoleLogger; logger.Filter = GetFilter(name); return(new DynamicConsoleLogger(logger, _messageProcessors)); }
public static int Main(string[] args) { var loggerProvider = new ConsoleLoggerProvider((s, level) => true, false); var source = new CancellationTokenSource(); var logger = new ConsoleMessageHandler(); var syslogServer = new UdpSyslogServer( // DI? new LoggerRawMessageHandler( new ParserRawMessageHandler( new RegexSyslogMessageParser(TimeSpan.FromSeconds(1)), logger), loggerProvider.CreateLogger(nameof(LoggerRawMessageHandler))) ); var exitKeyTask = PressEscToExit(logger); try { var syslogServerTask = syslogServer.Start(source.Token); Task.WaitAny(syslogServerTask, exitKeyTask); source.Cancel(); syslogServerTask.Wait(TimeSpan.FromSeconds(3)); // throws errors from syslogServer, if any return(0); } catch (AggregateException aggEx) { if (aggEx.InnerExceptions.Any(p => p is OperationCanceledException)) { return(0); } throw; } }
public void Test_Create_ConsoleProvider_With_Level() { var provider = new ConsoleLoggerProvider(LogLevel.Debug); var logger = provider.CreateLogger(this.GetType().FullName); Assert.False(logger.IsEnabled(LogLevel.Trace)); }
/// <summary> /// Creates a logger instance with given prefix. /// </summary> /// <param name="loggerFactory">Factory to create loggers.</param> /// <param name="categoryName">Category name for messages produced by the logger.</param> /// <param name="prefix">String to be put in front of each log of the newly created logger.</param> public PrefixLogger(ILoggerFactory loggerFactory, string categoryName, string prefix = null) { this.logger = NLog.LogManager.GetLogger(categoryName); var consoleLoggerProvider = new ConsoleLoggerProvider(loggerFactory.GetConsoleSettings()); this.consoleLogger = consoleLoggerProvider.CreateLogger(categoryName); this.prefix = prefix != null ? prefix : ""; this.wrapperType = typeof(PrefixLogger); }
public void ConsoleLogger_Settings_DisableColors() { var settings = new ConsoleLoggerSettings() { DisableColors = true }; var consoleLoggerProvider = new ConsoleLoggerProvider(settings); var logger = (ConsoleLogger)consoleLoggerProvider.CreateLogger("Test"); Assert.True(logger.DisableColors); }
public void ConsoleLoggerOptions_TimeStampFormat_IsReloaded() { // Arrange var monitor = new TestOptionsMonitor(new ConsoleLoggerOptions() { FormatterName = "NonExistentFormatter" }); var loggerProvider = new ConsoleLoggerProvider(monitor, ConsoleLoggerTest.GetFormatters()); var logger = (ConsoleLogger)loggerProvider.CreateLogger("Name"); // Act & Assert Assert.Equal("NonExistentFormatter", logger.Options.FormatterName); Assert.Equal(ConsoleFormatterNames.Simple, logger.Formatter.Name); }
public void Create_ConsoleProvider_With_Level() { var provider = new ConsoleLoggerProvider(LogLevel.Debug); var logger = provider.CreateLogger(this.GetType().FullName); Assert.False(logger.IsEnabled(LogLevel.Trace)); Assert.True(logger.IsEnabled(LogLevel.Debug)); Assert.True(logger.IsEnabled(LogLevel.Info)); Assert.True(logger.IsEnabled(LogLevel.Warn)); Assert.True(logger.IsEnabled(LogLevel.Error)); Assert.True(logger.IsEnabled(LogLevel.Fatal)); }
public void ConsoleLoggerOptions_LogAsErrorLevel_IsAppliedToLoggers() { // Arrange var monitor = new TestOptionsMonitor(new ConsoleLoggerOptions()); var loggerProvider = new ConsoleLoggerProvider(monitor); var logger = (ConsoleLogger)loggerProvider.CreateLogger("Name"); // Act & Assert Assert.Equal(LogLevel.None, logger.Options.LogToStandardErrorThreshold); monitor.Set(new ConsoleLoggerOptions() { LogToStandardErrorThreshold = LogLevel.Error }); Assert.Equal(LogLevel.Error, logger.Options.LogToStandardErrorThreshold); }
public void ConsoleLoggerOptions_DisableColors_IsReloaded() { // Arrange var monitor = new TestOptionsMonitor(new ConsoleLoggerOptions()); var loggerProvider = new ConsoleLoggerProvider(monitor); var logger = (ConsoleLogger)loggerProvider.CreateLogger("Name"); // Act & Assert Assert.Null(logger.Options.TimestampFormat); monitor.Set(new ConsoleLoggerOptions() { TimestampFormat = "yyyyMMddHHmmss" }); Assert.Equal("yyyyMMddHHmmss", logger.Options.TimestampFormat); }
private static async Task <int> RunServer(ServerOptions options, CancellationToken cancel) { ILoggerProvider cp = new ConsoleLoggerProvider((s, level) => level >= (options.Verbose ? LogLevel.Debug : LogLevel.Information), false); var serverLogger = cp.CreateLogger($"Server[{options.Host}:{options.Port}]"); var socket = new Socket(SocketType.Stream, ProtocolType.Tcp) { Blocking = false }; try { serverLogger.LogDebug("Binding to {0}:{1}", options.Host, options.Port); socket.Bind(new IPEndPoint(IPAddress.Parse(options.Host), options.Port)); socket.Listen(20); serverLogger.LogInformation("Successfully bound to {0}:{1}", options.Host, options.Port); while (!cancel.IsCancellationRequested) { var clientSocket = await socket.AcceptAsync(); serverLogger.LogInformation("Accepted connection from {0}", clientSocket.RemoteEndPoint.ToString()); } serverLogger.LogInformation("Received cancellation signal - shutting down."); return(0); } catch (Exception ex) { serverLogger.LogError(ex, "received error during processing."); return(-1); } finally { try { socket.Close(5); socket.Dispose(); serverLogger.LogInformation("Shutdown complete."); cp.Dispose(); } catch { // don't care about shutdown exceptions } } }
public void ConsoleLoggerOptions_IncludeScopes_IsAppliedToLoggers() { // Arrange var monitor = new TestOptionsMonitor(new ConsoleLoggerOptions() { IncludeScopes = true }); var loggerProvider = new ConsoleLoggerProvider(monitor); var logger = (ConsoleLogger)loggerProvider.CreateLogger("Name"); // Act & Assert Assert.True(logger.Options.IncludeScopes); monitor.Set(new ConsoleLoggerOptions() { IncludeScopes = false }); Assert.False(logger.Options.IncludeScopes); }
public void ConsoleLoggerOptions_TimeStampFormat_MultipleReloads() { var monitor = new TestOptionsMonitor(new ConsoleLoggerOptions()); var loggerProvider = new ConsoleLoggerProvider(monitor); var logger = (ConsoleLogger)loggerProvider.CreateLogger("Name"); Assert.Null(logger.Options.TimestampFormat); monitor.Set(new ConsoleLoggerOptions() { TimestampFormat = "yyyyMMdd" }); Assert.Equal("yyyyMMdd", logger.Options.TimestampFormat); monitor.Set(new ConsoleLoggerOptions() { TimestampFormat = "yyyyMMddHHmmss" }); Assert.Equal("yyyyMMddHHmmss", logger.Options.TimestampFormat); }
private static void Main(string[] args) { #pragma warning disable 162 Server server; var logger = new ConsoleLoggerProvider((s, level) => true, true); if (IsSslTest) { server = new Server(Http.Create(HttpMode.Dual), new SslListener(new TcpConnectionListener(IPAddress.Loopback, 11112), new SslServerAuthenticationOptions { EnabledSslProtocols = SslProtocols.Tls12, ServerCertificate = Pem.GetCertificate( "-----BEGIN CERTIFICATE-----MIID8zCCAtugAwIBAgIgdsp/a6adzYJ9SXdO19c9NX+xgW5VufVWrFK/Ddi5d7kwDQYJKoZIhvcNAQEFBQAwgYoxEjAQBgNVBAYTCVdvcmNlc3RlcjEVMBMGA1UECgwMVWx0eiBMaW1pdGVkMRQwEgYDVQQLDAtEZXZlbG9wbWVudDESMBAGA1UEAwwJbG9jYWxob3N0MR8wHQYJKoZIhvcNAQkBFhBsZWdhbEB1bHR6LmNvLnVrMRIwEAYDVQQDDAlsb2NhbGhvc3QwHhcNMTgwODE0MTY1OTM4WhcNMjgwODE0MTY1OTM4WjB2MRIwEAYDVQQGEwlXb3JjZXN0ZXIxFTATBgNVBAoMDFVsdHogTGltaXRlZDEUMBIGA1UECwwLRGV2ZWxvcG1lbnQxEjAQBgNVBAMMCWxvY2FsaG9zdDEfMB0GCSqGSIb3DQEJARYQbGVnYWxAdWx0ei5jby51azCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAI7zzCylJ4oSXuj1y4MmhRHBS0t5K8kwOQbrzRLFsbRU6vuMU/ZjiDZfNbTgfDvl/USaTxxRERnd+4SpNEOp5lMzjHDHCDtl54F00+7NJiGmA6KTcxS8u0oOnxBmr+cB7gNm/VdFTopq1xaXZ/W+066zllRPtGdPCpBO2irr4mHeCCyoCBwixj+Yrz03V8Ilr0g4gBlz1FqD/2B5bZ6pGiAVivecfT1wJKCBxjZSxLd2xmRtHeFxTUBbpkFiRcTE1PYz34g0EvhdWYRQmmjfy2DQomK3sHPLZj7OOLoyEaLzO+IVv2eN9SIx+JLPyOtuMF1AwVuswDJHODdrPGlqlcMCAwEAAaNYMFYwHQYDVR0OBBYEFJaAdm+WoLHxQBO1GEr5i4jhQ0R3MB8GA1UdIwQYMBaAFJaAdm+WoLHxQBO1GEr5i4jhQ0R3MBQGA1UdEQQNMAuCCWxvY2FsaG9zdDANBgkqhkiG9w0BAQUFAAOCAQEAGdmBS9KmR1iJSRa2lp7ZzWYawnuuMbxG+vsW9VOEpRFzP9697hQWdC3oyf+L8rxAD8dMO87kmZq46A7qxelt2cbdTtQj2ElYZzWr2SA0TrvG7F1SBBNGkAKwdbhXSa17bni1HbYi74EqLg4VHGE+vBl0ZSxe6QGcxsBasQty6K1Fks8Uul4eXcLFn5+dbspLdgfE8HFApXlsGeZ2AgAToztoDWuX90WdJpRmpEHUWnwpuXkrXVbSd4aMwdJ+AZeUPLkanqi/HpZkTFKcZdz5zDxQV8CRqh+dpGTnkF3rA6lWrQWGsOaNAS0DHNYlF6MeSG7x6/kK4aapHSf6dTKtJA==-----END CERTIFICATE-----", "-----BEGIN RSA PRIVATE KEY-----MIIEowIBAAKCAQEAjvPMLKUnihJe6PXLgyaFEcFLS3kryTA5BuvNEsWxtFTq+4xT9mOINl81tOB8O+X9RJpPHFERGd37hKk0Q6nmUzOMcMcIO2XngXTT7s0mIaYDopNzFLy7Sg6fEGav5wHuA2b9V0VOimrXFpdn9b7TrrOWVE+0Z08KkE7aKuviYd4ILKgIHCLGP5ivPTdXwiWvSDiAGXPUWoP/YHltnqkaIBWK95x9PXAkoIHGNlLEt3bGZG0d4XFNQFumQWJFxMTU9jPfiDQS+F1ZhFCaaN/LYNCiYrewc8tmPs44ujIRovM74hW/Z431IjH4ks/I624wXUDBW6zAMkc4N2s8aWqVwwIDAQABAoIBAAh4K55w3IJYK0pcbFslWENLM0r8mgUDTTr6k9MAZn0Q05PlZlYV4zdBddJKbeHd8vRHu4HUexG6w/uXS3LqKSzAbu+BmJxtoa/a/EbM3cJRmSvegODM0RXb/ug/BT3yWyfVcr4NwPpUxns0AONKPoq+YMeMVLES5EUqKXqF24rrwNss81VjKusHCu6ghhNLK8+WOlljqMaWeFJ+rtILaajPEjwtCQhoMU+Z8+pdXwfU2BMvSTx/srEzYDgr8w/1pk9Id08zDje7Dn6gZBN/4NNF66dtMt6/87acRKEFRE0bbLDpY0nX9Pm++EfGZmLApH84XypREnRMddTQgTMTVpkCgYEAxt1rwigGWSdjY6gzJ9b6c0iwTPOvIk/u1F37dTrnfZoyKGlcxAy+tZmt+CvxG0W/J/Y2sYvrXt8ldIrVeAJul+KbtXVmJseZpeIAZ4XCHmb8zJxCffGNtZHqrTKmKwJQKbbzczQImi/WdinVzjIMyQgnipOaKP1B6LmxpQ1W+wsCgYEAuAX80yfu01dOlSDQwiqI1r5mgI3XGfRkQMIkkZZ/Oik05/ODMLSS3DYdmk67uEmP+nf39WLminIV6kYBWAA+SayA81FQ7CZOqK1og5gfRQOrAabMbT7yqa65pBSwriea9rgLuZlQRUOQ/Shq/GU01vO6Ce+VLryR7BqH/8GpwykCgYEAtJnWCSfMTB9HVfQlMSM9pID5C4mrHaA2J8uKWHa8UQc+UhEN3EYu1EHTCrTtbHU1GxexqCCIC0rgeyyynSCoS2vTOUJ7GPDgixPqhhmlp3KkVzX59OLwbVstI0oCOsEJCDlMcu1oeo7DV+C6eV5e2ht7vZA6ysrllnM978Vjnu0CgYAiun6MGu0nVUKvQhIjkoNgg240tI/zhfulfP4Ju60m/L/PRlVry6grhsrvZAxpKvjQ+/L/jDqVxhH8tFlskh8vKC7tvFrZNiGCE7e1ne/IxnhvR1stAsQo4aCHJqBxPWgxR2pvDE/pwmaKYCZQm4jtR/HEDkLJHy0qsZcY3SN8gQKBgEz04YAwWA529u232rEyoI3xOd/VuQbEiXlXrYTldMZVE4cyATP8aNjtJT5s8J2gCRsr9yrFNhk92AX0LWtnESoQg7RPIDHEB90Y+S+mPmV+Il92u8iim3y3kz1QnJ221TgzghaikYCiI1iv16muH4UgjRiq6O5h9iW8zgJwspMU-----END RSA PRIVATE KEY-----"), ApplicationProtocols = new List <SslApplicationProtocol> { SslApplicationProtocol.Http2 }, ClientCertificateRequired = false }), logger ); } else { server = new Server(Http.Create(HttpMode.Dual), new TcpConnectionListener(IPAddress.Any, 11111), new ConsoleLoggerProvider((s, level) => true, true)); } // null); server.RequestReceived += ServerOnRequestReceived; var exceptionLogger = logger.CreateLogger("AppDomain-EX"); AppDomain.CurrentDomain.UnhandledException += (sender, eventArgs) => exceptionLogger.LogError((Exception)eventArgs.ExceptionObject, "Unhandled Exception"); server.Start(); Console.ReadLine(); server.Stop(); #pragma warning restore 162 }
public ILogger CreateLogger(string name) { ConsoleLogger created = _delegate.CreateLogger(name) as ConsoleLogger; return(_loggers.GetOrAdd(name, created)); }
public static ILogger CreateConsoleLogger() { var provider = new ConsoleLoggerProvider((message, level) => true, includeScopes: true); return(provider.CreateLogger("Console logger")); }