예제 #1
0
        private static IAppender CreateConsoleAppender(LogMessage.SeverityType severity)
        {
            var appender = new ColoredConsoleAppender();

            appender.AddMapping(new ColoredConsoleAppender.LevelColors {
                ForeColor = ColoredConsoleAppender.Colors.Red,
                Level     = Level.Error,
            });
            appender.AddMapping(new ColoredConsoleAppender.LevelColors {
                ForeColor = ColoredConsoleAppender.Colors.Green,
                Level     = Level.Debug,
            });
            appender.AddMapping(new ColoredConsoleAppender.LevelColors {
                ForeColor = ColoredConsoleAppender.Colors.White,
                Level     = Level.Info,
            });

            appender.Layout    = new PatternLayout(LogPattern);
            appender.Name      = "Console";
            appender.Threshold = TranslateLevel(severity);
            appender.ActivateOptions();

            var filter = new LoggerMatchFilter {
                AcceptOnMatch = false, LoggerToMatch = "NHibernate"
            };

            appender.AddFilter(filter);
            filter = new LoggerMatchFilter {
                AcceptOnMatch = false, LoggerToMatch = "NHibernate.SQL"
            };
            appender.AddFilter(filter);

            return(appender);
        }
 public static void MaybeLog(this ILogger logger, LogMessage.SeverityType severity, string message)
 {
     if (logger != null)
     {
         logger.Log(severity, message);
     }
 }
예제 #3
0
        protected void Log(LogMessage.SeverityType severity, string message)
        {
            var resultingSeverity = TreatErrorsAsWarnings && severity == LogMessage.SeverityType.Error
                                        ? LogMessage.SeverityType.Warning
                                        : severity;

            Logger.Log(resultingSeverity, message);
        }
예제 #4
0
 public void LogVersionOneConfiguration(LogMessage.SeverityType severity, XmlElement config)
 {
     try {
         var entity = VersionOneSettings.FromXmlElement(config);
         Log(severity, "    VersionOne URL: " + entity.Url);
         Log(severity, string.Format("    Using proxy server: {0}, Authentication type: {1}", entity.ProxySettings != null && entity.ProxySettings.Enabled, entity.AuthenticationType));
     } catch (Exception ex) {
         Log(LogMessage.SeverityType.Warning, "Failed to log VersionOne configuration data.", ex);
     }
 }
예제 #5
0
        private IAppender CreateRollingFileAppender(LogMessage.SeverityType severity, string filename, string maxFileSize)
        {
            var appender = new RollingFileAppender {
                Layout          = new PatternLayout(LogPattern),
                Name            = "File",
                Threshold       = TranslateLevel(severity),
                AppendToFile    = true,
                File            = filename,
                MaximumFileSize = maxFileSize
            };

            appender.ActivateOptions();

            return(appender);
        }
예제 #6
0
        private static Level TranslateLevel(LogMessage.SeverityType severity)
        {
            switch (severity)
            {
            case LogMessage.SeverityType.Debug:
                return(Level.Debug);

            case LogMessage.SeverityType.Info:
                return(Level.Info);

            case LogMessage.SeverityType.Error:
                return(Level.Error);

            default:
                return(Level.Info);
            }
        }
        public override void Initialize(System.Xml.XmlElement config, VersionOne.ServiceHost.Eventing.IEventManager eventManager, VersionOne.Profile.IProfile profile)
        {
            base.Initialize(config, eventManager, profile);

            if (config["LogLevel"] != null && ! string.IsNullOrEmpty(config["LogLevel"].InnerText))
            {
                string logLevel = config["LogLevel"].InnerText;

                try
                {
                    _severity = (LogMessage.SeverityType) Enum.Parse(typeof(LogMessage.SeverityType), logLevel, true);
                }
                catch (Exception)
                {
                    Console.WriteLine( "Couldn't parse LogLevel '{0}'. Try Debug, Info, or Error.");
                }

            }
        }
예제 #8
0
 public void LogVersionOneConnectionInformation(LogMessage.SeverityType severity, string metaVersion, string memberOid, string defaultMemberRole)
 {
     Log(severity, "    VersionOne Meta version: " + metaVersion);
     Log(severity, "    VersionOne Member OID: " + memberOid);
     Log(severity, "    VersionOne Member default role: " + defaultMemberRole);
 }
예제 #9
0
 public void Log(LogMessage.SeverityType severity, string message, Exception exception)
 {
     eventManager.Publish(new LogMessage(severity, message, exception));
 }
예제 #10
0
 public void Log(LogMessage.SeverityType severity, string message)
 {
     Log(severity, message, null);
 }
 public void LogVersionOneConnectionInformation(LogMessage.SeverityType severity, string metaVersion, string memberOid, string defaultMemberRole)
 {
 }
 public void LogVersionOneConfiguration(LogMessage.SeverityType severity, XmlElement config)
 {
 }
 public void Log(LogMessage.SeverityType severity, string message, Exception exception)
 {
 }
 public void Log(LogMessage.SeverityType severity, string message)
 {
 }
예제 #15
0
 private LogMessage.SeverityType ResolveSeverity(LogMessage.SeverityType originalSeverity)
 {
     return(TreatErrorsAsWarnings && originalSeverity == LogMessage.SeverityType.Error
         ? LogMessage.SeverityType.Warning
         : originalSeverity);
 }
예제 #16
0
        protected void Log(LogMessage.SeverityType severity, string message, Exception ex)
        {
            var resultingSeverity = ResolveSeverity(severity);

            Logger.Log(resultingSeverity, message, ex);
        }