コード例 #1
0
        public SubscriberClient(string server, string exchange, string queueName, IConnectionPool connPool, ISerializerNegotiator serializerNegotiator)
        {
            ILoggerProvider loggerProvider = new ConsoleLoggerProvider(new ConsoleLoggerSettings());

            subscriber = new TopicSubscriber <string>(server, exchange, connPool, serializerNegotiator, loggerProvider);
            subscriber.OnMessageReceived += Subscriber_OnMessageReceived;
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: cuonghd4k/automatica
        static async Task Main(string[] args)
        {
            System.Console.WriteLine("Hello World!");

            var logger = new ConsoleLoggerProvider((s, level) => true, true).CreateLogger("test");

            var driver = new BaosDriver("/dev/ttyAMA0", logger, new DataReceiver(logger));

            await driver.Start();

            //var desc = await driver.GetDatapointDescriptions();

            logger.LogDebug($"GetDpValues...");
            var data = await driver.GetDatapointValue(1, 1);

            logger.LogDebug($"GetDpValues...done");


            logger.LogDebug($"setDpValue...");
            var data1 = await driver.GetDatapointValue(2, 1);

            //var sendData = await driver.SetDatapointValue(1, new byte[] { 0x00 });
            logger.LogDebug($"setDpValue...done");

            System.Console.ReadLine();

            await driver.Stop();
        }
コード例 #3
0
        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));
        }
コード例 #4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="DynamicLoggerProvider"/> class.
 /// </summary>
 /// <param name="options">Pass-through to ConsoleLoggerProvider constructor</param>
 /// <param name="filterOptions">Logger filters</param>
 /// <param name="messageProcessors">message processors to apply to message</param>
 public DynamicLoggerProvider(IOptionsMonitor <ConsoleLoggerOptions> options, IOptionsMonitor <LoggerFilterOptions> filterOptions, IEnumerable <IDynamicMessageProcessor> messageProcessors = null)
 {
     _filterOptions = filterOptions;
     SetFiltersFromOptions();
     _delegate          = new ConsoleLoggerProvider(options);
     _messageProcessors = messageProcessors;
 }
コード例 #5
0
        public void TestUsingConsole()
        {
            var             sr  = new SimpleRenderer();
            var             con = new ConsoleLoggerProvider((x, y) => true, false, true);
            ILoggerProvider alp = new AugmentingLoggerProvider(con, sr, null)
            {
                IncludeScopes = true
            };
            var augged = alp.CreateLogger("tests");

            augged.LogInformation("Hello world.");
            using (augged.BeginScope("tagscope"))
            {
                augged.LogInformation("Hello world from within.");
            }

            using (augged.BeginScope(new Dictionary <string, object>()
            {
                ["CustomerId"] = 4444,
                ["OrderId"] = 777
            }))
            {
                augged.LogInformation("Searching for order status");
            }
        }
コード例 #6
0
ファイル: Program.cs プロジェクト: wk-j/entity-framework-core
        static void Main(string[] args)
        {
            var collection = new ServiceCollection();

            collection.AddDbContext <MyContext>(builder => {
                builder.UseNpgsql("Host=localhost;User Id=postgres;Password=1234;Database=LoggingThread");
                var p       = new ConsoleLoggerProvider((x, level) => level != LogLevel.Debug, true);
                var factory = new LoggerFactory(new[] { p });
                builder.UseLoggerFactory(factory);
            });

            collection.AddScoped <MyProgram>();

            var provider = collection.BuildServiceProvider();
            var program  = provider.GetService <MyProgram>();

            var context = provider.GetService <MyContext>();

            context.Database.EnsureDeleted();
            context.Database.EnsureCreated();
            foreach (var item in Enumerable.Range(0, 100))
            {
                context.Students.Add(new Student());
            }
            context.SaveChanges();

            program.Run();

            Console.ReadLine();
        }
コード例 #7
0
        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;
            }
        }
コード例 #8
0
 public void Dispose()
 {
     _delegate?.Dispose();
     _delegate = null;
     _settings = null;
     _loggers  = null;
 }
コード例 #9
0
 /// <summary>
 /// Initializes a new instance of the <see cref="DynamicLoggerProvider"/> class.
 /// </summary>
 /// <param name="filter">Default log level filter</param>
 /// <param name="includeScopes">Enable log scoping</param>
 public DynamicLoggerProvider(Func <string, LogLevel, bool> filter, bool includeScopes)
 {
     _delegate      = new ConsoleLoggerProvider(filter, includeScopes);
     _filter        = filter ?? _falseFilter;
     _settings      = null;
     _includeScopes = includeScopes;
 }
コード例 #10
0
        public PublisherClient(string server, string exchange, string routingKey, IConnectionPool connPool, ISerializerNegotiator serializerNegotiator)
        {
            ILoggerProvider loggerProvider = new ConsoleLoggerProvider(new ConsoleLoggerSettings());

            publisher       = new TopicPublisher(server, exchange, connPool, serializerNegotiator, loggerProvider);
            this.routingKey = routingKey;
        }
コード例 #11
0
        static ILoggerFactory GetLoggerFactory()
        {
            var consoleLoggerProvider = new ConsoleLoggerProvider((_, __) => true, true);

            return(new LoggerFactory(new[] {
                consoleLoggerProvider
            }));
        }
コード例 #12
0
ファイル: Program.cs プロジェクト: zhj11226/http2dotnet
    static void Main(string[] args)
    {
        var logProvider = new ConsoleLoggerProvider((s, level) => true, true);
        // Create a TCP socket acceptor
        var listener = new TcpListener(IPAddress.Any, 8889);

        listener.Start();
        Task.Run(() => AcceptTask(listener, logProvider)).Wait();
    }
コード例 #13
0
        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            var consoleLoggerProvider = new ConsoleLoggerProvider((s, level) => true, true);
            var loggerFactory         = new LoggerFactory();

            loggerFactory.AddProvider(consoleLoggerProvider);
            optionsBuilder.UseLoggerFactory(loggerFactory);
            optionsBuilder.UseInMemoryDatabase("test");
        }
コード例 #14
0
        public static void SetupConsoleLogging([CanBeNull] LogLevel?minimumLevel = null,
                                               [CanBeNull] Dictionary <string, LogLevel> logFilter = null)
        {
            var consoleProvider = new ConsoleLoggerProvider(
                (text, logLevel) => ConsoleLogFilter(text, logLevel, minimumLevel, logFilter),
                true
                );

            Factory.AddProvider(consoleProvider);
        }
コード例 #15
0
        /// <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);
        }
コード例 #16
0
        public void CanDuckTypeILoggerFactory()
        {
            var loggerFactory = new LoggerFactory();
            var testProvider  = new ConsoleLoggerProvider(new DummyOptionsMonitor());

            var proxy = loggerFactory.DuckCast <ILoggerFactory>();

            proxy.Should().NotBeNull();
            proxy.AddProvider(testProvider);
        }
コード例 #17
0
 /// <summary>
 /// Initializes a new instance of the <see cref="DynamicLoggerProvider"/> class.
 /// </summary>
 /// <param name="settings">Logging Settings</param>
 public DynamicLoggerProvider(IConsoleLoggerSettings settings)
 {
     _delegate = new ConsoleLoggerProvider(settings);
     _settings = settings;
     SetFiltersFromSettings();
     if (_settings.ChangeToken != null)
     {
         _settings.ChangeToken.RegisterChangeCallback(OnConfigurationReload, null);
     }
 }
コード例 #18
0
        public LoggingHandler()
        {
            var configureNamedOptions = new ConfigureNamedOptions <ConsoleLoggerOptions>("", null);
            var optionsFactory        = new OptionsFactory <ConsoleLoggerOptions>(new[] { configureNamedOptions }, Enumerable.Empty <IPostConfigureOptions <ConsoleLoggerOptions> >());
            var optionsMonitor        = new OptionsMonitor <ConsoleLoggerOptions>(optionsFactory, Enumerable.Empty <IOptionsChangeTokenSource <ConsoleLoggerOptions> >(), new OptionsCache <ConsoleLoggerOptions>());

            consoleLoggerProvider = new ConsoleLoggerProvider(optionsMonitor);
            LoggerFactory         = new LoggerFactory(new[] { consoleLoggerProvider }, new LoggerFilterOptions {
                MinLevel = LogLevel.Information
            });
        }
コード例 #19
0
ファイル: LojaContext.cs プロジェクト: flaviogf/courses
        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            var console = new ConsoleLoggerProvider(
                (category, level) => category == DbLoggerCategory.Database.Command.Name && level == LogLevel.Information, true
                );

            var logger = new LoggerFactory(new[] { console });

            optionsBuilder
            .UseLoggerFactory(logger)
            .UseSqlite("Data Source=loja.db");
        }
コード例 #20
0
        public static ILoggingBuilder AddCaesuraConsoleLogger(this ILoggingBuilder builder, Action <ConsoleLoggerConfiguration>?configure)
        {
            var config = new ConsoleLoggerConfiguration();

            configure?.Invoke(config);

            var provider = new ConsoleLoggerProvider(config);

            builder.AddProvider(provider);

            return(builder);
        }
コード例 #21
0
        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);
        }
コード例 #22
0
        public static ILoggingBuilder AddCaesuraConsoleLogger(this ILoggingBuilder builder, LogLevel log_level)
        {
            var config = new ConsoleLoggerConfiguration()
            {
                LogLevel = log_level,
            };

            var provider = new ConsoleLoggerProvider(config);

            builder.AddProvider(provider);

            return(builder);
        }
コード例 #23
0
ファイル: LoggerTest.cs プロジェクト: EsWork/Es.Logging
        public void Can_AddProvider_Create_Logger()
        {
            var factory = new LoggerFactory();

            var provicer1 = new ConsoleLoggerProvider(LogLevel.Error);
            var provicer2 = new ConsoleLoggerProvider(LogLevel.Debug);

            factory.AddProvider(new[] { provicer1, provicer2 });

            var logger = factory.CreateLogger(this.GetType().Name);

            Assert.True(logger.IsEnabled(LogLevel.Debug));
        }
コード例 #24
0
        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);
        }
コード例 #25
0
        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));
        }
コード例 #26
0
        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);
        }
コード例 #27
0
        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);
        }
コード例 #28
0
        protected virtual void Dispose(bool disposing)
        {
            if (!_disposed)
            {
                if (disposing)
                {
                    // Cleanup
                    _delegate?.Dispose();
                    _delegate = null;
                    _loggers  = null;
                }

                _disposed = true;
            }
        }
コード例 #29
0
        // ReSharper disable once UnusedParameter.Local
        private static void Main(string[] args)
        {
            using (var httpServer = new HttpServer(new H2RequestProvider()))
            {
                // Normal port
                httpServer.Use(new TcpListenerAdapter(new TcpListener(IPAddress.Loopback, 81)));

                // Ssl Support :
                var serverCertificate = TempCer.Get();
                var loggerProvider    = new ConsoleLoggerProvider((s, level) => true, false);
                httpServer.Use
                (
                    new SslListenerBuilder().WithH2()
                    .WithTls12()
                    .WithServerCertificate(serverCertificate)
                    .WithChild(new TcpListenerAdapter(new TcpListener(IPAddress.Loopback, 444)))
                    .Build()
                );

                // Request handling :
                // httpServer.Use
                // (
                //     (context, next) =>
                //     {
                //         Console.WriteLine("Got Request!");
                //         return next();
                //     }
                // );

                // Handler classes :
                //httpServer.Use(new TimingHandler());
                httpServer.Use(new PostTest());
                httpServer.Use(loggerProvider);
                httpServer.Use
                (
                    new HttpRouter().With(string.Empty, new IndexHandler())
                    .With("about", new AboutHandler())
                );
                httpServer.Use(new FileHandler());
                httpServer.Use(new ErrorHandler());

                httpServer.Start();

                Console.ReadLine();
            }
        }
コード例 #30
0
        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
                }
            }
        }