/// <summary>Initializes a new instance of the <see cref="LoggingConfigurationManager" /> class.
        /// </summary>
        internal LoggingConfigurationManager()
        {
            try
            {
                var settings = ConfigurationManager.GetSection("LoggingSetting") as LoggingConfigurationFileSection;

                var type = Type.GetType(settings.TypeName, throwOnError: true, ignoreCase: true);

                var configuration = new ContainerConfiguration().WithAssembly(type.Assembly);
                var container     = configuration.CreateContainer();
                Value = container.GetExport <IloggerStreamFactory>();
            }
            catch (Exception e)
            {
                IloggerStreamFactory standardLogger = new StandardLoggerStreamFactory();
                standardLogger.Log(LogLevel.Critical, e, "Configuration file corrupt or invalid, use standard logger implementation.");

                Value = standardLogger;
            }
        }
예제 #2
0
 /// <summary>Initializes the <see cref="Logger"/> class.
 /// </summary>
 static Logger()
 {
     Stream = new LoggingConfigurationManager().Value;
 }