/// <summary> /// Init the logger /// </summary> private static void InitLogger() { Directory.CreateDirectory(_defaultLogFolder); var version = Assembly.GetExecutingAssembly().GetName().Version; var pid = Process.GetCurrentProcess().Id; var maxN = GetMaxFileNumber(_defaultLogFolder, ErrorLogPrefixName, ApplicationLogPrefixName); maxN++; var applicationLogPath = Path.Combine(_defaultLogFolder, $"{ApplicationLogPrefixName}_{maxN:000}_{version}_{pid:00000}.txt"); var errorLogPath = Path.Combine(_defaultLogFolder, $"{ErrorLogPrefixName}_{maxN:000}_{version}_{pid:00000}.txt"); new ExceptionLogger(errorLogPath); _applicationLogWriterInstance = new LogMessageBase(applicationLogPath); Log.Instance.InformationLogBase = new ApplicationLogBase(true, StatusLevel.Information, _applicationLogWriterInstance); Log.Instance.SilentWarningLogBase = new ApplicationLogBase(true, StatusLevel.Warning, _applicationLogWriterInstance); Log.Instance.DisplayWarningLogBase = new ApplicationLogBase(true, StatusLevel.Warning, _applicationLogWriterInstance); Log.Instance.ErrorLogBase = new ApplicationLogBase(true, StatusLevel.Error, _applicationLogWriterInstance); Log.Instance.SuccessLogBase = new ApplicationLogBase(true, StatusLevel.Success, _applicationLogWriterInstance); }
public void TriggerLogMessageEvent(LogMessageBase message) { _synchronizationContext.Send(state => { _onLogMessageEvent.Invoke((LogMessageBase)state); }, message); }