Пример #1
0
 public UnityDebugLoggerFactoryAdapter(NameValueCollection properties)
 {
     _level            = ArgUtils.TryParseEnum(LogLevel.All, ArgUtils.GetValue(properties, "level"));
     _showLogName      = ArgUtils.TryParse(true, ArgUtils.GetValue(properties, "showLogName"));
     _showLogLevel     = ArgUtils.TryParse(true, ArgUtils.GetValue(properties, "showLogLevel"));
     _useUnityLogLevel = ArgUtils.TryParse(true, ArgUtils.GetValue(properties, "useUnityLogLevel"));
 }
Пример #2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="AbstractSimpleLoggerFactoryAdapter"/> class.
 /// </summary>
 /// <remarks>
 /// Looks for level, showDateTime, showLogName, dateTimeFormat items from
 /// <paramref name="properties" /> for use when the GetLogger methods are called.
 /// <see cref="ConfigurationSectionHandler"/> for more information on how to use the
 /// standard .NET application configuraiton file (App.config/Web.config)
 /// to configure this adapter.
 /// </remarks>
 /// <param name="properties">The name value collection, typically specified by the user in
 /// a configuration section named common/logging.</param>
 protected AbstractSimpleLoggerFactoryAdapter(NameValueCollection properties)
     : base(true)
 {
     _level          = ArgUtils.TryParseEnum(LogLevel.All, ArgUtils.GetValue(properties, "level"));
     _showDateTime   = ArgUtils.TryParse(true, ArgUtils.GetValue(properties, "showDateTime"));
     _showLogName    = ArgUtils.TryParse(true, ArgUtils.GetValue(properties, "showLogName"));
     _showLevel      = ArgUtils.TryParse(true, ArgUtils.GetValue(properties, "showLevel"));
     _dateTimeFormat = ArgUtils.GetValue(properties, "dateTimeFormat", string.Empty);
 }
        private void ConfigureLogLevel(NameValueCollection properties)
        {
            //set the logging level; default to ALL
            var levelSetting = ArgUtils.TryParseEnum(LogLevel.All, ArgUtils.GetValue(properties, "level"));

            switch (levelSetting)
            {
            case LogLevel.Trace:
            case LogLevel.All:
                LogLevel = LogLevel.Trace | LogLevel.Debug | LogLevel.Info | LogLevel.Warn | LogLevel.Error | LogLevel.Fatal;
                break;

            case LogLevel.Debug:
                LogLevel = LogLevel.Debug | LogLevel.Info | LogLevel.Warn | LogLevel.Error | LogLevel.Fatal;
                break;

            case LogLevel.Info:
                LogLevel = LogLevel.Info | LogLevel.Warn | LogLevel.Error | LogLevel.Fatal;
                break;

            case LogLevel.Warn:
                LogLevel = LogLevel.Warn | LogLevel.Error | LogLevel.Fatal;
                break;

            case LogLevel.Error:
                LogLevel = LogLevel.Error | LogLevel.Fatal;
                break;

            case LogLevel.Fatal:
                LogLevel = LogLevel.Fatal;
                break;

            case LogLevel.Off:
            default:
                break;
            }
        }
Пример #4
0
        public ETWLoggerFactoryAdapter(NameValueCollection properties)
            : base(true)
        {
            //assign an instance of a custom ICommonLoggingEventSource if specified, else use default type
            var commonLoggingEventSourceTypeDescriptor = ArgUtils.GetValue(properties, "commonLoggingEventSourceType", string.Empty);

            if (!string.IsNullOrEmpty(commonLoggingEventSourceTypeDescriptor))
            {
                var type = Type.GetType(commonLoggingEventSourceTypeDescriptor);

                if (null == type)
                {
                    throw new ConfigurationException(
                              string.Format(
                                  "Error in 'commonLoggingEventSourceType' arg.  Unable to determine TYPE information from value {0}",
                                  commonLoggingEventSourceTypeDescriptor));
                }

                try
                {
                    var candidate = Activator.CreateInstance(type) as ICommonLoggingEventSource;

                    if (candidate != null)
                    {
                        ETWEventSource = candidate;
                    }
                }
                catch (Exception exception) //no matter the underlying exception type we want to report it as a Config Exception
                {
                    throw new ConfigurationException("Error in 'commonLoggingEventSourceType' arg.", exception);
                }
            }
            else
            {
                ETWEventSource = new CommonLoggingEventSource();
            }

            //set the logging level; default to ALL
            var levelSetting = ArgUtils.TryParseEnum(LogLevel.All, ArgUtils.GetValue(properties, "level"));

            switch (levelSetting)
            {
            case LogLevel.Trace:
            case LogLevel.All:
                LogLevel = LogLevel.Trace | LogLevel.Debug | LogLevel.Info | LogLevel.Warn | LogLevel.Error | LogLevel.Fatal;
                break;

            case LogLevel.Debug:
                LogLevel = LogLevel.Debug | LogLevel.Info | LogLevel.Warn | LogLevel.Error | LogLevel.Fatal;
                break;

            case LogLevel.Info:
                LogLevel = LogLevel.Info | LogLevel.Warn | LogLevel.Error | LogLevel.Fatal;
                break;

            case LogLevel.Warn:
                LogLevel = LogLevel.Warn | LogLevel.Error | LogLevel.Fatal;
                break;

            case LogLevel.Error:
                LogLevel = LogLevel.Error | LogLevel.Fatal;
                break;

            case LogLevel.Fatal:
                LogLevel = LogLevel.Fatal;
                break;

            case LogLevel.Off:
            default:
                break;
            }
        }