/// <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 }); }
/// <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); }
/// <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); }