dotnet / msbuild

The Microsoft Build Engine (MSBuild) is the build platform for .NET and Visual Studio.
https://docs.microsoft.com/visualstudio/msbuild/msbuild
MIT License
5.21k stars 1.35k forks source link

[Bug]: PerformanceSummary console logger parameter doesn't show anything with terminal logger enabled #10413

Open ViktorHofer opened 1 month ago

ViktorHofer commented 1 month ago

Issue Description

dotnet msbuild /t:Build /clp:PerformanceSummary /v:m .\evalperfm.csproj -> doesn't show the performance summary information.

dotnet msbuild /t:Build /clp:PerformanceSummary /v:m .\evalperfm.csproj -tl:off does.

Is that intentional?

Steps to Reproduce

See above

Expected Behavior

Performance summary should be shown when using the terminal logger

Actual Behavior

Performance summary isn't shown when using the terminal logger

Analysis

No response

Versions & Configurations

No response

AR-May commented 1 month ago

It is probably an expected outcome of changing the default logger. /clp:PerformanceSummary is the console logger parameter and the terminal logger is now used instead of the console logger, and it has different parameters set. We should consider adding a terminal logger parameter /tlp:PerformanceSummary that allows to show the performance summary. Or maybe we shall make PerformanceSummary a build parameter? @baronfel

rainersigwald commented 1 month ago

Hm, that's an unfortunate result of some of our design decisions. Maybe if we're in tl auto-mode and there are clp arguments we should go back to console logger?

baronfel commented 1 month ago

Potentially, but we should look at console logger features that are in use and target them for analogues in TL - for example this Perf summary would be a fit for the proposed 'post build summary' area in TL. As TL learns about these CL features we'd opt into it more.