public void Publish(MqttNetLogLevel logLevel, string source, string message, object[] parameters, System.Exception?exception) { LogEventInfo logEventInfo = new(); switch (logLevel) { case MqttNetLogLevel.Verbose: return; case MqttNetLogLevel.Info: logEventInfo.Level = LogLevel.Info; break; case MqttNetLogLevel.Warning: logEventInfo.Level = LogLevel.Warn; break; case MqttNetLogLevel.Error: logEventInfo.Level = LogLevel.Error; break; } logEventInfo.Exception = exception; logEventInfo.TimeStamp = DateTime.Now; logEventInfo.Message = $"{source} {message}"; logEventInfo.Parameters = parameters; logger.Log(logEventInfo); }
public void Publish( MqttNetLogLevel logLevel, string?source, string message, object[]?parameters, Exception?exception) { switch (logLevel) { case MqttNetLogLevel.Verbose: _logger.LogMqttClientVerbose(source, message, parameters, exception); break; case MqttNetLogLevel.Info: _logger.LogMqttClientInformation(source, message, parameters, exception); break; case MqttNetLogLevel.Warning: _logger.LogMqttClientWarning(source, message, parameters, exception); break; case MqttNetLogLevel.Error: _logger.LogMqttClientError(source, message, parameters, exception); break; default: throw new InvalidOperationException("Unexpected MqttNetLogLevel"); } }
public void Publish(MqttNetLogLevel logLevel, string source, string message, object[] parameters, Exception exception) { var hasLocalListeners = LogMessagePublished != null; var hasGlobalListeners = MqttNetGlobalLogger.HasListeners; if (!hasLocalListeners && !hasGlobalListeners) { return; } if (parameters?.Length > 0) { try { message = string.Format(message, parameters); } catch { message = "MESSAGE FORMAT INVALID: " + message; } } var traceMessage = new MqttNetLogMessage(_logId, DateTime.UtcNow, Environment.CurrentManagedThreadId, source, logLevel, message, exception); if (hasGlobalListeners) { MqttNetGlobalLogger.Publish(traceMessage); } if (hasLocalListeners) { LogMessagePublished?.Invoke(this, new MqttNetLogMessagePublishedEventArgs(traceMessage)); } }
public void Publish(MqttNetLogLevel logLevel, string source, string message, object[] parameters, Exception exception) { switch (logLevel) { case MqttNetLogLevel.Verbose: _logger.LogDebug(message, parameters); break; case MqttNetLogLevel.Info: _logger.LogInformation(message, parameters); break; case MqttNetLogLevel.Warning: _logger.LogWarning(exception, message, parameters); break; case MqttNetLogLevel.Error: _logger.LogError(exception, message, parameters); break; default: _logger.LogDebug(message, parameters); break; } }
public void Publish(MqttNetLogLevel logLevel, string source, string message, object[] parameters, Exception exception) { var newLogLevel = LogLevel.Debug; if (logLevel == MqttNetLogLevel.Warning) { newLogLevel = LogLevel.Warning; } else if (logLevel == MqttNetLogLevel.Error) { newLogLevel = LogLevel.Error; } else if (logLevel == MqttNetLogLevel.Info) { newLogLevel = LogLevel.Information; } else if (logLevel == MqttNetLogLevel.Verbose) { newLogLevel = LogLevel.Trace; } _logger.Log(newLogLevel, source, exception, message, parameters); LogMessagePublished?.Invoke(this, new MqttNetLogMessagePublishedEventArgs(null)); }
public void Publish(MqttNetLogLevel logLevel, string source, string message, object[] parameters, Exception exception) { LogLevel level; switch (logLevel) { case MqttNetLogLevel.Verbose: level = LogLevel.Trace; break; case MqttNetLogLevel.Info: level = LogLevel.Information; break; case MqttNetLogLevel.Warning: level = LogLevel.Warning; break; case MqttNetLogLevel.Error: level = LogLevel.Error; break; default: throw new ArgumentOutOfRangeException(nameof(logLevel), logLevel, null); } _logger.Log(level, exception, message, parameters); }
private void Publish <TSource>(MqttNetLogLevel logLevel, Exception exception, string message, object[] parameters) { var hasLocalListeners = LogMessagePublished != null; var hasGlobalListeners = MqttNetGlobalLog.HasListeners; if (!hasLocalListeners && !hasGlobalListeners) { return; } if (parameters.Length > 0) { message = string.Format(message, parameters); } var traceMessage = new MqttNetLogMessage(_logId, DateTime.Now, Environment.CurrentManagedThreadId, typeof(TSource).Name, logLevel, message, exception); if (hasGlobalListeners) { MqttNetGlobalLog.Publish(traceMessage); } if (hasLocalListeners) { LogMessagePublished?.Invoke(this, new MqttNetLogMessagePublishedEventArgs(traceMessage)); } }
public void Publish(MqttNetLogLevel logLevel, string message, object[] parameters, Exception exception) { Console.WriteLine($"Publish:{logLevel},'{string.Format(message, parameters)}'"); if (exception != null) { Console.WriteLine($"Publish ERROR: {exception.Message}"); } }
public void Publish(MqttNetLogLevel logLevel, string message, object[] parameters, Exception exception) { LogMessagePublished?.Invoke(this, new MqttNetLogMessagePublishedEventArgs(new MqttNetLogMessage { Level = logLevel, Message = message })); }
public void Publish(MqttNetLogLevel logLevel, string source, string message, object[] parameters, Exception exception) { LogMessagePublished?.Invoke(this, new MqttNetLogMessagePublishedEventArgs(new MqttNetLogMessage { Level = logLevel, Message = string.Format(message, parameters), Exception = exception })); }
public MqttNetLogMessage(string logId, DateTime timestamp, int threadId, string source, MqttNetLogLevel level, string message, Exception exception) { LogId = logId; Timestamp = timestamp; ThreadId = threadId; Source = source; Level = level; Message = message; Exception = exception; }
public void Publish(MqttNetLogLevel logLevel, string source, string message, object[] parameters, Exception exception) { var convertedLogLevel = ConvertLogLevel(logLevel); _logger.Log(convertedLogLevel, exception, message, parameters); var logMessagePublishedEvent = LogMessagePublished; if (logMessagePublishedEvent != null) { var logMessage = new MqttNetLogMessage(null, DateTime.UtcNow, Thread.CurrentThread.ManagedThreadId, source, logLevel, message, exception); logMessagePublishedEvent.Invoke(this, new MqttNetLogMessagePublishedEventArgs(logMessage)); } }
private static LogLevel ConvertLogLevel(MqttNetLogLevel logLevel) { switch (logLevel) { case MqttNetLogLevel.Error: return(LogLevel.Error); case MqttNetLogLevel.Warning: return(LogLevel.Warning); case MqttNetLogLevel.Info: return(LogLevel.Information); case MqttNetLogLevel.Verbose: return(LogLevel.Debug); } return(LogLevel.Debug); }
public void Publish(MqttNetLogLevel level, string source, string message, object[] parameters, Exception exception) { var hasLocalListeners = LogMessagePublished != null; var hasGlobalListeners = MqttNetGlobalLogger.HasListeners; if (!hasLocalListeners && !hasGlobalListeners) { return; } try { message = string.Format(message ?? string.Empty, parameters); } catch (FormatException) { message = "MESSAGE FORMAT INVALID: " + message; } var logMessage = new MqttNetLogMessage { LogId = _logId, Timestamp = DateTime.UtcNow, Source = source, ThreadId = #if NET40 Thread.CurrentThread.ManagedThreadId, #else Environment.CurrentManagedThreadId, #endif Level = level, Message = message, Exception = exception }; if (hasGlobalListeners) { MqttNetGlobalLogger.Publish(logMessage); } if (hasLocalListeners) { LogMessagePublished?.Invoke(this, new MqttNetLogMessagePublishedEventArgs(logMessage)); } } }
public void Publish(MqttNetLogLevel level, string message, object[] parameters, Exception exception) { var hasLocalListeners = LogMessagePublished != null; var hasGlobalListeners = MqttNetGlobalLogger.HasListeners; if (!hasLocalListeners && !hasGlobalListeners && _parentLogger == null) { return; } if (parameters?.Length > 0) { try { message = string.Format(message, parameters); } catch { message = "MESSAGE FORMAT INVALID: " + message; } } var logMessage = new MqttNetLogMessage { LogId = _logId, Timestamp = DateTime.UtcNow, Source = _source, ThreadId = Environment.CurrentManagedThreadId, Level = level, Message = message, Exception = exception }; if (hasGlobalListeners) { MqttNetGlobalLogger.Publish(logMessage); } if (hasLocalListeners) { LogMessagePublished?.Invoke(this, new MqttNetLogMessagePublishedEventArgs(logMessage)); } _parentLogger?.Publish(logMessage); }
private LogLevel ToMsLogging(MqttNetLogLevel level) { switch (level) { case MqttNetLogLevel.Verbose: return(LogLevel.Trace); case MqttNetLogLevel.Info: return(LogLevel.Information); case MqttNetLogLevel.Warning: return(LogLevel.Warning); case MqttNetLogLevel.Error: return(LogLevel.Error); default: return(LogLevel.None); } }
private LogLevel GetLogLevel(MqttNetLogLevel logLevel) { switch (logLevel) { case MqttNetLogLevel.Verbose: return(LogLevel.Trace); case MqttNetLogLevel.Info: return(LogLevel.Information); case MqttNetLogLevel.Warning: return(LogLevel.Warning); case MqttNetLogLevel.Error: return(LogLevel.Error); default: return(LogLevel.Critical); } }
public void Publish(MqttNetLogLevel logLevel, string message, object[] parameters, Exception exception) { switch (logLevel) { case MqttNetLogLevel.Verbose: log.Verbose(message); break; case MqttNetLogLevel.Info: log.Information(message); break; case MqttNetLogLevel.Warning: log.Warning(message); break; case MqttNetLogLevel.Error: log.Error(exception, message); break; } }
public void Publish(MqttNetLogLevel level, string source, string message, object[] parameters, Exception exception) { var eventHandler = LogMessagePublished; if (eventHandler == null) { // No listener is attached so we can step out. // Keep a reference to the handler because the handler // might be null after preparing the message. return; } if (parameters?.Length > 0 && message?.Length > 0) { try { message = string.Format(message, parameters); } catch (FormatException) { message = "MESSAGE FORMAT INVALID: " + message; } } // We only use UTC here to improve performance. Using a local date time // would require to load the time zone settings! var logMessage = new MqttNetLogMessage { LogId = LogId, Timestamp = DateTime.UtcNow, Source = source, ThreadId = Environment.CurrentManagedThreadId, Level = level, Message = message, Exception = exception }; eventHandler.Invoke(this, new MqttNetLogMessagePublishedEventArgs(logMessage)); }
public void Publish(MqttNetLogLevel logLevel, string source, string message, object[]?parameters, Exception?exception) { var foregroundColor = ConsoleColor.White; switch (logLevel) { case MqttNetLogLevel.Verbose: foregroundColor = ConsoleColor.White; break; case MqttNetLogLevel.Info: foregroundColor = ConsoleColor.Green; break; case MqttNetLogLevel.Warning: foregroundColor = ConsoleColor.DarkYellow; break; case MqttNetLogLevel.Error: foregroundColor = ConsoleColor.Red; break; } if (parameters?.Length > 0) { message = string.Format(message, parameters); } lock (_consoleSyncRoot) { Console.ForegroundColor = foregroundColor; Console.WriteLine(message); if (exception != null) { Console.WriteLine(exception); } } }
public void Publish(MqttNetLogLevel logLevel, string source, string message, object[] parameters, Exception exception) { var level = GetLogLevel(logLevel); logger.Log(level, exception, message, parameters); var logMessagePublished = LogMessagePublished; if (logMessagePublished != null) { var logMessage = new MqttNetLogMessage { LogId = "DataTransmitter", Timestamp = DateTime.UtcNow, Source = source, ThreadId = Environment.CurrentManagedThreadId, Level = logLevel, Message = message, Exception = exception }; logMessagePublished.Invoke(this, new MqttNetLogMessagePublishedEventArgs(logMessage)); } }
public void Publish(MqttNetLogLevel logLevel, string message, object[] parameters, Exception exception) { var newLogLevel = LogLevel.Debug; if (logLevel == MqttNetLogLevel.Warning) { newLogLevel = LogLevel.Warning; } else if (logLevel == MqttNetLogLevel.Error) { newLogLevel = LogLevel.Error; } else if (logLevel == MqttNetLogLevel.Info) { newLogLevel = LogLevel.Information; } else if (logLevel == MqttNetLogLevel.Verbose) { newLogLevel = LogLevel.Trace; } _logger.Log(newLogLevel, exception, message, parameters); }
public void Publish(MqttNetLogLevel logLevel, string source, string message, object[] parameters, Exception exception) { LogLevel loggerLogLevel = LogLevel.None; switch (logLevel) { case MqttNetLogLevel.Error: loggerLogLevel = LogLevel.Error; break; case MqttNetLogLevel.Info: loggerLogLevel = LogLevel.Information; break; case MqttNetLogLevel.Verbose: loggerLogLevel = LogLevel.Trace; break; case MqttNetLogLevel.Warning: loggerLogLevel = LogLevel.Warning; break; } Logger.Log(loggerLogLevel, new EventId(), message, exception, (x, y) => $"{string.Format(x, parameters)}: {y?.Message}"); }
public void Publish(MqttNetLogLevel logLevel, string message, object[] parameters, Exception exception) { _logger.Publish(logLevel, _source, message, parameters, exception); }
public void Publish(MqttNetLogLevel logLevel, string message, object[] parameters, Exception exception) => _logger.Log(_logLevelMap[logLevel], exception, message, parameters);
public void Publish(MqttNetLogLevel logLevel, string message, object[] parameters, System.Exception?exception) { Publish(logLevel, source, message, parameters, exception); }
public void Publish(MqttNetLogLevel logLevel, string source, string message, object[] parameters, Exception exception) { // Forward the log message to other loggers. // 1. Convert log level to matching log level in target logger. // 2. Call target logger and pass data accordingly. }
public void Publish(MqttNetLogLevel logLevel, string source, string message, object[] parameters, Exception exception) { }
public void Publish(MqttNetLogLevel logLevel, string message, object[] parameters, Exception exception) { Publish(logLevel, null, message, parameters, exception); }
public void Publish(MqttNetLogLevel logLevel, string source, string message, object[] parameters, Exception exception) { throw new NotImplementedException(); }