in TeamCity.MSBuild.Logger/EventHandlers/BuildFinishedHandler.cs [44:116]
public void Handle(BuildFinishedEventArgs e)
{
if (e == null) throw new ArgumentNullException(nameof(e));
_statistics.Publish();
if (!_context.Parameters.ShowOnlyErrors && !_context.Parameters.ShowOnlyWarnings && _context.DeferredMessages.Count > 0 && _context.IsVerbosityAtLeast(LoggerVerbosity.Normal))
{
_messageWriter.WriteLinePrettyFromResource("DeferredMessages");
foreach (var message in _context.DeferredMessages.Values.SelectMany(i => i))
{
_messageWriter.PrintMessage(message, false);
}
}
if (_context.Parameters.ShowPerfSummary)
{
ShowPerfSummary();
}
if (_context.IsVerbosityAtLeast(LoggerVerbosity.Normal) || (_context.Parameters.ShowSummary ?? false))
{
if (e.Succeeded)
{
_logWriter.SetColor(Color.Success);
}
else
{
_logWriter.SetColor(_context.ErrorCount > 0 ? Color.Error : Color.Warning);
}
_messageWriter.WriteNewLine();
_messageWriter.WriteLinePretty(e.Message);
_logWriter.ResetColor();
}
if (_context.Parameters.ShowSummary ?? false)
{
if (_context.IsVerbosityAtLeast(LoggerVerbosity.Normal))
{
ShowNestedErrorWarningSummary();
}
else
{
ShowFlatErrorWarningSummary();
}
if (_context.WarningCount > 0)
{
_logWriter.SetColor(Color.Warning);
}
_messageWriter.WriteLinePrettyFromResource(2, "WarningCount", _context.WarningCount);
_logWriter.ResetColor();
if (_context.ErrorCount > 0)
{
_logWriter.SetColor(Color.Error);
}
_messageWriter.WriteLinePrettyFromResource(2, "ErrorCount", _context.ErrorCount);
_logWriter.ResetColor();
}
if (_context.IsVerbosityAtLeast(LoggerVerbosity.Normal) || (_context.Parameters.ShowSummary ?? false))
{
var str = _logFormatter.FormatTimeSpan(e.Timestamp - _context.BuildStarted);
_messageWriter.WriteNewLine();
_messageWriter.WriteLinePrettyFromResource("TimeElapsed", str);
}
_context.ResetConsoleLoggerState();
}