/// <summary>
        /// Creates an instrumentation logger. It can perform both regular logging and FFD logging
        /// </summary>
        /// <param name="loggerName"></param>
        /// <returns></returns>
        public static IInstrumentedLogger CreateInstrumentedLogger(string loggerName)
        {
            ILogCollector collector;

            try
            {
                collector = CollectorHelper.CreateCollectorForLogger(loggerName);
            }
            catch
            {
                collector = CollectorHelper.CreateCollector();
            }

            int heartbeatInterval = 0;

            try
            {
                foreach (LoggerDefinition definition in ConfigurationHelper.SourceConfiguration.logger)
                {
                    if (definition.name != loggerName)
                    {
                        continue;
                    }
                    heartbeatInterval = definition.heartbeatinterval;
                    break;
                }
            }
            catch { }
            return(new FieldFailureDataLogger(collector, loggerName)
            {
                HeartbeatInterval = heartbeatInterval
            });
        }
Esempio n. 2
0
        /// <summary>
        /// Creates a logger by name
        /// </summary>
        /// <param name="loggerName">Name of logger</param>
        /// <returns></returns>
        public static ILog GetLogger(string loggerName)
        {
            if (_loggers.ContainsKey("loggerName"))
            {
                return(_loggers["loggerName"]);
            }
            ILog ret = InstantiateLogger(loggerName);

            ret.Collector = CollectorHelper.CreateCollectorForLogger(loggerName);
            return(ret);
        }
Esempio n. 3
0
        /// <summary>
        /// Creates a logger by name
        /// </summary>
        /// <param name="loggerName">Name of logger</param>
        /// <param name="facility">Syslog facility to use</param>
        /// <returns></returns>
        public static ILog GetLogger(string loggerName, SyslogFacility facility)
        {
            if (_loggers.ContainsKey("loggerName"))
            {
                ILogger retu = (ILogger)_loggers["loggerName"].Clone();
                retu.Facility = facility;
                return(retu);
            }
            ILogger ret = InstantiateLogger(loggerName);

            ret.Collector = CollectorHelper.CreateCollectorForLogger(loggerName);
            ret.Facility  = facility;
            return(ret);
        }