Exemple #1
0
        /// <summary>
        /// Adds an event logger. Use <paramref name="configure"/> to enable logging for specific <see cref="LogLevel"/>s.
        /// </summary>
        /// <param name="builder">The extension method argument.</param>
        /// <param name="configure">A delegate to configure the <see cref="EventLogSettings"/>.</param>
        /// <returns>The <see cref="ILoggingBuilder"/> so that additional calls can be chained.</returns>
        public static ILoggingBuilder AddEventLog(this ILoggingBuilder builder, Action <EventLogSettings> configure)
        {
            ThrowHelper.ThrowIfNull(configure);

            builder.AddEventLog();
            builder.Services.Configure(configure);

            return(builder);
        }
Exemple #2
0
 private static void SetupLogRole(ILoggingBuilder loggingBuilder)
 {
     loggingBuilder.AddConsole();
     loggingBuilder.AddDebug();
     loggingBuilder.AddEventLog(new Microsoft.Extensions.Logging.EventLog.EventLogSettings()
     {
         MachineName = ""
     });
 }
Exemple #3
0
        /// <summary>
        /// Adds an event logger. Use <paramref name="configure"/> to enable logging for specific <see cref="LogLevel"/>s.
        /// </summary>
        /// <param name="builder">The extension method argument.</param>
        /// <param name="configure">A delegate to configure the <see cref="EventLogSettings"/>.</param>
        /// <returns>The <see cref="ILoggingBuilder"/> so that additional calls can be chained.</returns>
        public static ILoggingBuilder AddEventLog(this ILoggingBuilder builder, Action <EventLogSettings> configure)
        {
            if (configure == null)
            {
                throw new ArgumentNullException(nameof(configure));
            }

            builder.AddEventLog();
            builder.Services.Configure(configure);

            return(builder);
        }
        public static ILoggingBuilder AddKRFLogger(this ILoggingBuilder builder, KRFLogConfiguration settings, IConfiguration configuration)
        {
            if (settings == null)
            {
                throw new Exception("Configuration is missing KRFLogger settings");
            }

            if (settings.KRFLogDestination == null || settings.KRFLogDestination.Length == 0)
            {
                throw new Exception("Configuration is missing KRFLogDestination settings on KRFLogger");
            }

            builder.ClearProviders();
            builder.AddConfiguration(configuration.GetSection(KRFApiSettings.Logging_Key));

            if (settings.KRFLogDestination.Any(ld => ld.Equals(KRFLogDestinationEnum.ToConsole)))
            {
                builder.AddConsole();
            }

            if (settings.KRFLogDestination.Any(ld => ld.Equals(KRFLogDestinationEnum.ToDebug)))
            {
                builder.AddDebug();
            }

            if (settings.KRFLogDestination.Any(ld => ld.Equals(KRFLogDestinationEnum.ToEvents)))
            {
                builder.AddEventLog();
            }

            if (settings.KRFLogDestination.Any(ld => ld.Equals(KRFLogDestinationEnum.ToEventSource)))
            {
                builder.AddEventSourceLogger();
            }

            if (settings.KRFLogDestination.Any(ld => ld.Equals(KRFLogDestinationEnum.ToFile)) && settings.KRFFileLogger != null)
            {
                builder.AddKRFLogToFileLogger(o => { o = settings.KRFFileLogger; });
            }

            if (settings.KRFLogDestination.Any(ld => ld.Equals(KRFLogDestinationEnum.ToServer)))
            {
                throw new Exception("Logging to server not implemented");
                //builder.AddKRFLogToServerLogger( loggerConfig.GetSection( KRFApiSettings.KRFServerLoggerConfig_Key ) );
            }

            return(builder);
        }
Exemple #5
0
        private static void ConfigureLogging(WebHostBuilderContext webHostBuilderContext, ILoggingBuilder loggingBuilder)
        {
            // https://docs.microsoft.com/en-us/aspnet/core/fundamentals/logging/loggermessage?view=aspnetcore-2.2
            if (Debugger.IsAttached)
            {
                loggingBuilder.AddDebug();
            }

            loggingBuilder.AddEventSourceLogger();
            loggingBuilder.AddEventLog();
            // loggingBuilder.AddTraceSource();

#pragma warning disable CC0022
            loggingBuilder.AddProvider(new ExceptionlessLoggerProvider(ExceptionlessClient.Default));
#pragma warning restore CC0022
        }
Exemple #6
0
        // TODO: Move part of logging configuration to Startup (aka web-api only)?
        private static void ConfigureLogging(ILoggingBuilder loggingBuilder)
        {
            var configuringDateTimeUtc = DateTime.UtcNow;
            // TODO: Remove hardcoded path
            var logFileName = string.Format(
                @"c:\Program Files\potential-computing-machine\logs\pcm_{0}.log",
                configuringDateTimeUtc.ToString("s").Replace(":", "-"));

            loggingBuilder
            // TODO: Implement custom source for event log
            .AddEventLog(eventLogSettings => eventLogSettings.Filter = (_, logLevel) => logLevel >= LogLevel.Warning)
            .AddFile(
                logFileName,
                fileLoggerOptions =>
            {
                fileLoggerOptions.MaxRollingFiles = 5;
                fileLoggerOptions.Append          = true;
            });
        }
Exemple #7
0
 public static void ConfigureCustomLogging(this ILoggingBuilder builder)
 {
     builder.AddConsole();
     builder.AddEventLog();
 }