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);
             }
         }
     }
 }
示例#3
0
        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);
            }
        }
示例#4
0
 private void LogError(string msg)
 {
     BuildAndLogConsoleLog(msg, LogLevel.Error);
     _processStdErrDataQueue = WorkerProcessUtilities.AddStdErrMessage(_processStdErrDataQueue, Sanitizer.Sanitize(msg));
 }