예제 #1
0
파일: NRLogger.cs 프로젝트: ilanc/NLogSlack
 /*
 private void InitConsoleTargetAndRule()
 {
     Target target = LogManager.Configuration.AllTargets.FirstOrDefault(x => x.Name == "console");
     LoggingRule rule = new LoggingRule("*", LogLevel.Trace, target);
     LogManager.Configuration.LoggingRules.Add(rule);
 }
  */
 private void LogToConsole(NRLogger.Level level, string message, object[] args = null)
 {
     if ((int)level <= (int)_LogToConsoleLevel)
     {
         var m = (args == null) ? message : string.Format(message, args);
         Console.WriteLine(level.ToString() + " :" + m);
     }
 }
예제 #2
0
파일: NRLogger.cs 프로젝트: ilanc/NLogSlack
        private NRLogger.Level _LogToConsoleLevel = NRLogger.Level.Error; // only Errors and Fatal are logged to console

        #endregion Fields

        #region Constructors

        private NRLogger(NRLogger.Level level)
        {
            //PreNLogInit();
            Logger = NLog.LogManager.GetCurrentClassLogger();
            _LogToConsoleLevel = level;
        }
예제 #3
0
파일: NRLogger.cs 프로젝트: ilanc/NLogSlack
 public static void Shutdown()
 {
     // NOTE: Can have a race condition on Shutdown as follows:
     //  thread 1: calls ICBCodes.Instance and returns _instance to caller
     //  thread 1: suspended before caller uses returned _instance
     //  thread 2: Shutdown() called which forces _instance to null
     // NB cacheing ICBCodes.Instance in caller is very bad for this
     lock (_syncRoot)
     {
         _instance.Flush();
         _instance = null;
     }
 }
예제 #4
0
파일: NRLogger.cs 프로젝트: ilanc/NLogSlack
 public void SetLogToConsoleLevel(NRLogger.Level l)
 {
     _LogToConsoleLevel = l;
 }
예제 #5
0
파일: NRLogger.cs 프로젝트: ilanc/NLogSlack
 public static NRLogger Initialise(NRLogger.Level level = NRLogger.Level.Error)
 {
     lock (_syncRoot)
     {
         if (_instance != null)
         {
             throw new Exception("NRLogger.Initialise(..) has already been called");
         }
         _instance = new NRLogger(level);
         return _instance;
     }
 }