Ejemplo n.º 1
0
        /// <summary>
        /// Регистрируем правила Nlog для строки состояния
        /// </summary>
        /// <param name="methodName">Имя статического метода который будет вызываться при появлении сообщения.</param>
        /// <param name="className">Имя класа в котором находится метод.</param>
        public static void MakeNewStatusTargetForNlog(string methodName, string className)
        {
            NLog.Config.LoggingConfiguration config = LogManager.Configuration;
            if (config.FindTargetByName("status") != null)
            {
                return;
            }
            NLog.Targets.MethodCallTarget targetLog = new NLog.Targets.MethodCallTarget();
            targetLog.Name       = "status";
            targetLog.MethodName = methodName;
            targetLog.ClassName  = className;
            targetLog.Parameters.Add(new NLog.Targets.MethodCallParameter("${message}"));
            config.AddTarget("status", targetLog);
            NLog.Config.LoggingRule rule = new NLog.Config.LoggingRule("*", targetLog);
            rule.EnableLoggingForLevel(LogLevel.Info);
            config.LoggingRules.Add(rule);

            LogManager.Configuration = config;
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Регистрируем правила Nlog для строки состояния
        /// </summary>
        /// <param name="methodName">Имя статического метода который будет вызываться при появлении сообщения.</param>
        /// <param name="className">Имя класа в котором находится метод.</param>
        public static void MakeNewStatusTargetForNlog(string methodName, string className)
        {
            NLog.Config.LoggingConfiguration config = LogManager.Configuration;
            if (config.FindTargetByName ("status") != null)
                return;
            NLog.Targets.MethodCallTarget targetLog = new NLog.Targets.MethodCallTarget ();
            targetLog.Name = "status";
            targetLog.MethodName = methodName;
            targetLog.ClassName = className;
            targetLog.Parameters.Add (new NLog.Targets.MethodCallParameter ("${message}"));
            config.AddTarget ("status", targetLog);
            NLog.Config.LoggingRule rule = new NLog.Config.LoggingRule ("*", targetLog);
            rule.EnableLoggingForLevel (LogLevel.Info);
            config.LoggingRules.Add (rule);

            LogManager.Configuration = config;
        }