Získání protokolů sestavení pomocí nástroje MSBuild
Pomocí možností příkazového řádku s nástrojem MSBuild můžete určit, kolik dat sestavení chcete zkontrolovat a zda chcete uložit data sestavení do jednoho nebo více souborů. Můžete také zadat vlastní protokolovací nástroj pro shromažďování dat sestavení. Informace o možnostech příkazového řádku NÁSTROJE MSBuild, které toto téma nepokrývá, najdete v tématu Odkaz na příkazový řádek.
Poznámka:
Pokud vytváříte projekty pomocí integrovaného vývojového prostředí sady Visual Studio, můžete tyto sestavení vyřešit kontrolou protokolů sestavení. Další informace naleznete v tématu Postupy: Zobrazení, uložení a konfigurace souborů protokolu sestavení.
Nastavení úrovně podrobností
Při vytváření projektu pomocí nástroje MSBuild bez zadání úrovně podrobností se ve výstupním protokolu zobrazí následující informace:
Chyby, upozornění a zprávy, které jsou zařazené do kategorií jako vysoce důležité.
Některé události stavu.
Souhrn sestavení.
Pomocí přepínače -verbosity (-v) můžete určit, kolik dat se zobrazí ve výstupním protokolu. Při řešení potíží použijte úroveň detailed
podrobností (d
) nebo diagnostic
(diag
), která poskytuje nejvíce informací.
Proces sestavení může být pomalejší, když nastavíte -verbosity na detailed
hodnotu -verbosity a ještě pomaleji, když nastavíte hodnotu -verbosity na diagnostic
hodnotu .
msbuild MyProject.proj -t:go -v:diag
Nastavení podrobností
Následující tabulka ukazuje, jak podrobnost protokolu (hodnoty sloupců) ovlivňuje, které typy zpráv (hodnoty řádků) se protokolují.
Typ zprávy / podrobnosti | Quiet | Minimální | Normální | Podrobný | Diagnostika |
---|---|---|---|---|---|
Chyby | ✅ | ✅ | ✅ | ✅ | ✅ |
Upozornění | ✅ | ✅ | ✅ | ✅ | ✅ |
Zprávy s vysokou důležitostí | ✅ | ✅ | ✅ | ✅ | |
Zprávy s normální důležitostí | ✅ | ✅ | ✅ | ||
Zprávy s nízkou důležitostí | ✅ | ✅ | |||
Další informace o modulu MSBuild | ✅ |
Uložení protokolu sestavení do souboru
K uložení dat sestavení do souboru můžete použít přepínač -fileLogger (fl). Následující příklad uloží data sestavení do souboru s názvem msbuild.log.
msbuild MyProject.proj -t:go -fileLogger
V následujícím příkladu má soubor protokolu název MyProjectOutput.log a úroveň podrobností výstupu protokolu je nastavena na diagnostic
hodnotu . Tato dvě nastavení zadáte pomocí přepínače -fileLoggerParameters (flp
).
msbuild MyProject.proj -t:go -fl -flp:logfile=MyProjectOutput.log;verbosity=diagnostic
Další informace najdete v tématu Referenční informace k příkazovému řádku.
Uložení výstupu protokolu do více souborů
Následující příklad uloží celý protokol do msbuild1.log, jenom chyby JustErrors.log a jenom upozornění na JustWarnings.log. Příklad používá čísla souborů pro každý ze tří souborů. Čísla souborů se zadají hned za přepínači -fl a -flp (například -fl1
a -flp1
).
Přepínače -fileLoggerParameters (flp
) pro soubory 2 a 3 určují, co má každý soubor pojmenovat a co zahrnout do každého souboru. Pro soubor 1 není zadán žádný název, takže se použije výchozí název msbuild1.log .
msbuild MyProject.proj -t:go -fl1 -fl2 -fl3 -flp2:logfile=JustErrors.log;errorsonly -flp3:logfile=JustWarnings.log;warningsonly
Pokud používáte prostředí, které interpretuje středníky (například Bash), dejte jednoduché nebo dvojité uvozovky kolem libovolné možnosti, která má středníky, aby se zabránilo jeho interpretaci jako oddělovače příkazů. Další informace najdete v tématu Referenční informace k příkazovému řádku.
Uložení binárního protokolu
Protokol můžete uložit komprimovaný binární formát pomocí přepínače -binaryLogger (bl). Tento protokol obsahuje podrobný popis procesu sestavení a může ho číst určité nástroje pro analýzu protokolů.
V následujícím příkladu se vytvoří binární soubor protokolu s názvem binarylogfilename.
-bl:binarylogfilename.binlog
Pomocí prohlížeče strukturovaných protokolů můžete zobrazit binární protokoly způsobem, který usnadňuje zobrazení toho, co se děje.
Další informace najdete v tématu Referenční informace k příkazovému řádku.
Použití vlastního protokolovacího nástroje
Vlastní protokolovací nástroj můžete napsat vytvořením spravovaného typu, který implementuje ILogger rozhraní. Vlastní protokolovací nástroj můžete například použít k odesílání chyb sestavení v e-mailu, k jejich protokolování do databáze nebo k jejich zaprotokolování do souboru XML. Další informace naleznete v tématu Protokolovací nástroje sestavení.
V příkazovém řádku MSBuild zadáte vlastní protokolovací nástroj pomocí přepínače -logger . K zakázání výchozího protokolovacího nástroje konzoly můžete použít také přepínač -noconsolelogger .