Obtendo logs de compilação com o MSBuild
Usando opções com MSBuild, você pode especificar quantos dados de compilação que você deseja examinar e se você deseja salvar dados de compilação a um ou mais arquivos. Você também pode especificar um registador personalizado para coletar dados de compilação. Para obter informações sobre opções de linha de comando MSBuild que este tópico não aborda, consulte Referência de linha de comando MSBuild.
Dica
Se você criar projetos usando o IDE do Visual Studio, você pode solucionar problemas dessas compilações examinando logs de compilação.Para obter mais informações, consulte Como ver, salvar e configurar arquivos de log de compilação.
Definindo o nível de detalhes
Quando você cria um projeto usando MSBuild sem especificar um nível de detalhe, as seguintes informações aparece no log de saída:
Erros, avisos e mensagens, que são categorizados como altamente importantes.
Alguns eventos de status.
Um resumo de compilação.
Usando a opção de /verbosity (/v), você pode controlar a quantidade de dados aparecem no log de saída. Para solucionar, use uma verbosidade em nível de detailed (d) ou de diagnostic (diag), que fornece as informações.
O processo de compilação pode ser mais lento quando você define /verbosity a detailed e ainda mais lento quando você define /verbosity a diagnostic.
msbuild MyProject.proj /t:go /v:diag
Salvando o log de compilação para um arquivo
Você pode usar a opção de /fileLogger (fl) para salvar dados de compilação para um arquivo. O exemplo a seguir salva dados de compilação para um arquivo chamado msbuild.log.
msbuild MyProject.proj /t:go /fileLogger
No exemplo a seguir, o arquivo de log é chamado MyProjectOutput.log, e a verbosidade de saída de log é definida como diagnostic. Você especifica as duas configurações usando a opção de /filelogparameters (flp).
msbuild MyProject.proj /t:go /fl /flp:logfile=MyProjectOutput.log;verbosity=diagnostic
Para obter mais informações, consulte Referência de linha de comando MSBuild.
Salvando a saída de log para vários arquivos
O exemplo a seguir salva o log inteiro a msbuild1.log, apenas os erros a JustErrors.log, e apenas os avisos a JustWarnings.log. O exemplo usa números de arquivo para cada um dos três arquivos. Números de arquivo são especificados imediatamente depois de opções de /fl e de /flp (por exemplo, /fl1 e /flp1).
Alterna de /filelogparameters (flp) para arquivos 2 e 3 especifica que o nomear cada arquivo e o que incluir em cada arquivo. Nenhum nome é especificado para o arquivo 1, então o nome padrão de msbuild1.log é usado.
msbuild MyProject.proj /t:go /fl1 /fl2 /fl3 /flp2:logfile=JustErrors.log;errorsonly /flp3:logfile=JustWarnings.log;warningsonly
Para obter mais informações, consulte Referência de linha de comando MSBuild.
Usando um registador personalizado
Você pode escrever seu próprio registador criando um tipo gerenciado que implementa a interface de ILogger . Você pode usar um registador personalizado, por exemplo, para enviar erros de compilação no email, para registrar-los logon em um banco de dados, ou para registrar-los logon para um arquivo XML. Para obter mais informações, consulte Agentes de log de compilação.
Na linha de comando MSBuild, você especifica o registador personalizado usando a opção de /logger . Você também pode usar a opção de /noconsolelogger para desativar o registador padrão de console.
Consulte também
Referência
Conceitos
Registrando em logs em um ambiente multiprocessador
Criando agentes de log de encaminhamento