Пример #1
0
        public LoggerFile(Configurations.Logger config) : base(config)
        {
            var directory = _config.Settings;

            // if no directory is set, we try to write to the application data folder
            if (string.IsNullOrEmpty(directory))
            {
                directory = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
                directory = Path.Combine(directory, Assembly.GetExecutingAssembly().GetName().Name);
                directory = Path.Combine(directory, "Logs");
            }
            else if (!Path.IsPathRooted(directory))
            {
                directory = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), directory);
            }

            _directoryLogs = directory;

            // this will thow if parent directory does not exist or permission is missing
            // this is ok to let the outside caller know about this
            if (!Directory.Exists(_directoryLogs))
            {
                Directory.CreateDirectory(_directoryLogs);
            }

            // write empty message to test access
            this.Log(new LoggerMessage {
                Text = "Testing file access."
            }, true);
        }
Пример #2
0
        public LoggerEventLog(Configurations.Logger config) : base(config)
        {
            _source = config.Settings;

            // if no source has been specified or if it is not available
            if (string.IsNullOrEmpty(_source) || !EventLog.SourceExists(_source))
            {
                _source = Assembly.GetExecutingAssembly().GetName().Name + "test";

                if (!EventLog.SourceExists(_source))
                {
                    EventLog.CreateEventSource(_source, "Application");
                }
            }
        }
Пример #3
0
        public LoggerBase(Configurations.Logger config)
        {
            _config = config;

            _priorities = LoggerPriorities.None;

            // parse priorities
            if (_config != null && !string.IsNullOrEmpty(_config.Priorities))
            {
                _priorities = LoggerPriorities.None;

                var configPriorities = _config.Priorities.ToLower().Split(',');
                foreach (var configPriority in configPriorities)
                {
                    switch (configPriority.Trim())
                    {
                    case "verbose":
                        _priorities |= LoggerPriorities.Verbose;
                        break;

                    case "info":
                        _priorities |= LoggerPriorities.Info;
                        break;

                    case "error":
                        _priorities |= LoggerPriorities.Error;
                        break;
                    }
                }
            }

            // if no priorities were found, log all
            if (_priorities == LoggerPriorities.None)
            {
                _priorities = LoggerPriorities.All;
            }
        }
Пример #4
0
 public LoggerConsole(Configurations.Logger config) : base(config)
 {
     Console.BackgroundColor = ConsoleColor.Black;
 }
Пример #5
0
 public LoggerMultiple(Configurations.Logger config) : base(config)
 {
     throw new NotSupportedException("LoggerMultiple can not be initilized with a configuration, since its not logging itself.");
 }