diff --git a/dotnet/src/dotnetframework/GxClasses/Diagnostics/Log.cs b/dotnet/src/dotnetframework/GxClasses/Diagnostics/Log.cs index 078672fcc..4e7bfb660 100644 --- a/dotnet/src/dotnetframework/GxClasses/Diagnostics/Log.cs +++ b/dotnet/src/dotnetframework/GxClasses/Diagnostics/Log.cs @@ -52,6 +52,60 @@ public static void Write(int logLevel, string message, string topic) { Write(message, topic, logLevel); } + + private static void LoggingFunc(string message, string topic, int logLevel, params string[] list) + { + IGXLogger log = GetLogger(topic); + LogLevel logLvl = (LogLevel)logLevel; + + switch (logLvl) + { + case LogLevel.Off: + break; + case LogLevel.Trace: + GXLogging.Trace(log, message, list); + break; + case LogLevel.Debug: + GXLogging.Debug(log, message, list); + break; + case LogLevel.Info: + GXLogging.Info(log, message, list); + break; + case LogLevel.Warn: + GXLogging.Warn(log, message, list); + break; + case LogLevel.Error: + GXLogging.Error(log, message, list); + break; + case LogLevel.Fatal: + GXLogging.Critical(log, message, list); + break; + default: + GXLogging.Debug(log, message, list); + break; + } + } + public static void Write(string message, string topic, int logLevel, string propertyvalue1) + { + LoggingFunc(message, topic, logLevel, propertyvalue1); + } + public static void Write(string message, string topic, int logLevel, string propertyvalue1, string propertyvalue2) + { + LoggingFunc(message, topic, logLevel, propertyvalue1, propertyvalue2); + } + public static void Write(string message, string topic, int logLevel, string propertyvalue1, string propertyvalue2, string propertyvalue3) + { + LoggingFunc(message, topic, logLevel, propertyvalue1, propertyvalue2, propertyvalue3); + } + public static void Write(string message, string topic, int logLevel, string propertyvalue1, string propertyvalue2, string propertyvalue3, string propertyvalue4) + { + LoggingFunc(message, topic, logLevel, propertyvalue1, propertyvalue2, propertyvalue3, propertyvalue4); + } + public static void Write(string message, string topic, int logLevel, string propertyvalue1, string propertyvalue2, string propertyvalue3, string propertyvalue4, string propertyvalue5) + { + LoggingFunc(message, topic, logLevel, propertyvalue1, propertyvalue2, propertyvalue3, propertyvalue4, propertyvalue5); + } + public static void Write(string message, string topic, int logLevel) { LogLevel logLvl = (LogLevel)logLevel; diff --git a/dotnet/src/dotnetframework/GxClasses/Helpers/GXLogging.cs b/dotnet/src/dotnetframework/GxClasses/Helpers/GXLogging.cs index c27480c41..08f92e540 100644 --- a/dotnet/src/dotnetframework/GxClasses/Helpers/GXLogging.cs +++ b/dotnet/src/dotnetframework/GxClasses/Helpers/GXLogging.cs @@ -59,6 +59,7 @@ public interface IGXLogger void LogTrace(string value); + void LogTrace(string value, params string[] list); void LogError(string msg, Exception ex); void LogError(string msg); @@ -119,6 +120,10 @@ public void LogTrace(string msg) { log.LogTrace(msg); } + public void LogTrace(string msg, params string[] list) + { + log.LogTrace(msg, list); + } public void LogError(string msg, Exception ex) { log.LogError(ex, msg); @@ -256,6 +261,18 @@ public void LogTrace(string value) SetThreadIdForLogging(); log.Logger.Log(MethodBase.GetCurrentMethod().DeclaringType, Level.Trace, value, null); } + + public void LogTrace(string value, params string[] list) + { + SetThreadIdForLogging(); + StringBuilder message = new StringBuilder(); + message.Append(value); + foreach (string parm in list) + { + message.Append(parm); + } + log.Logger.Log(MethodBase.GetCurrentMethod().DeclaringType, Level.Trace, message.ToString(), null); + } public void LogError(string msg, Exception ex) { SetThreadIdForLogging(); @@ -519,6 +536,14 @@ internal static void Trace(IGXLogger logger, params string[] list) logger.LogTrace(string.Join(" ", list)); } } + internal static void Trace(IGXLogger logger, params string[] list) + { + if (logger != null) + { + if (logger.IsTraceEnabled) + logger.LogTrace(string.Join(" ", list)); + } + } internal static void Trace(IGXLogger logger, Func buildMsg) { if (logger != null) @@ -530,6 +555,7 @@ internal static void Trace(IGXLogger logger, Func buildMsg) } } } + internal static bool TraceEnabled(IGXLogger logger) { if (logger != null)