private void OnOutputDataReceived(object sender, DataReceivedEventArgs e) { if (e.Data != null) { string msg = e.Data; if (WorkerProcessUtilities.IsConsoleLog(msg)) { msg = WorkerProcessUtilities.RemoveLogPrefix(msg); _workerProcessLogger?.LogInformation(msg); } else { _consoleLogSource?.Log(msg); } } }
private void OnErrorDataReceived(object sender, DataReceivedEventArgs e) { // TODO: per language stdout/err parser? if (e.Data != null) { string msg = e.Data; if (msg.IndexOf("warn", StringComparison.OrdinalIgnoreCase) > -1) { if (WorkerProcessUtilities.IsConsoleLog(msg)) { msg = WorkerProcessUtilities.RemoveLogPrefix(msg); _workerProcessLogger?.LogWarning(msg); } else { _consoleLogSource?.Log(msg); } } else if ((msg.IndexOf("error", StringComparison.OrdinalIgnoreCase) > -1) || (msg.IndexOf("fail", StringComparison.OrdinalIgnoreCase) > -1) || (msg.IndexOf("severe", StringComparison.OrdinalIgnoreCase) > -1)) { if (WorkerProcessUtilities.IsConsoleLog(msg)) { msg = WorkerProcessUtilities.RemoveLogPrefix(msg); _workerProcessLogger?.LogError(msg); } else { _consoleLogSource?.Log(msg); } _processStdErrDataQueue = WorkerProcessUtilities.AddStdErrMessage(_processStdErrDataQueue, Sanitizer.Sanitize(msg)); } else { if (WorkerProcessUtilities.IsConsoleLog(msg)) { msg = WorkerProcessUtilities.RemoveLogPrefix(msg); _workerProcessLogger?.LogInformation(msg); } else { _consoleLogSource?.Log(msg); } } } }
internal void BuildAndLogConsoleLog(string msg, LogLevel level) { ConsoleLog consoleLog = new ConsoleLog() { Message = msg, Level = level }; if (WorkerProcessUtilities.IsConsoleLog(msg)) { _workerProcessLogger?.Log(level, WorkerProcessUtilities.RemoveLogPrefix(msg)); } else { _consoleLogSource?.Log(consoleLog); } }
private void LogError(string msg) { BuildAndLogConsoleLog(msg, LogLevel.Error); _processStdErrDataQueue = WorkerProcessUtilities.AddStdErrMessage(_processStdErrDataQueue, Sanitizer.Sanitize(msg)); }