Search code examples
msbuildvisual-studio-2017trace

Trace execution of MsBuild toolchain scripts


I'm diagnosing a problem with MsBuild not finding stock configuration files for a toolchain.

msbuild <...> /consoleloggerparameters verbosity=diagnostic traces property changes and the file:line that made the change -- so I can see there the properties go wrong.

But it doesn't trace other aspects of execution, <Import> directives in particular. So I cannot see the actual execution flow -- to understand what is included from where and why. Just searching the .props/.targets for the name of the included file is useless because they are often patterns.

Is there are way to include this information into the diagnostic output?

The MsBuild being used is the stock version included with VS2017:

>where msbuild
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\MSBuild.exe

>msbuild /version /nologo
15.7.177.53362

Solution

  • You can use binary logs together with the structured log viewer.