Kontrola protokolů pro diagnostiku problémů s kanály
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019 | TFS 2018
Protokoly kanálů poskytují výkonný nástroj pro určení příčiny selhání kanálu.
Typickým výchozím bodem je kontrola protokolů v dokončených buildech nebo vydané verzi. Protokoly můžete zobrazit tak, že přejdete na souhrn spuštění kanálu a vyberete úlohu a úlohu. Pokud dojde k selhání určitého úkolu, zkontrolujte protokoly pro daný úkol.
Kromě zobrazení protokolů v souhrnu buildu kanálu si můžete stáhnout kompletní protokoly, které obsahují další diagnostické informace, a můžete nakonfigurovat podrobnější protokoly, které vám pomůžou s řešením potíží.
Konfigurace podrobných protokolů
Pokud chcete pomoct s řešením potíží, můžete nakonfigurovat protokoly tak, aby byly podrobnější.
Pokud chcete nakonfigurovat podrobné protokoly pro jedno spuštění, můžete spustit nové sestavení tak, že zvolíte Spustit kanál a vyberete Povolit diagnostiku systému, spustit.
Chcete-li nakonfigurovat podrobné protokoly pro všechna spuštění, můžete přidat proměnnou s názvem
system.debug
a nastavit její hodnotu natrue
.
Chcete-li nakonfigurovat podrobné protokoly pro jedno spuštění, můžete spustit nové sestavení výběrem možnosti Sestavení fronty a nastavením hodnoty proměnné
system.debug
natrue
.Pokud chcete nakonfigurovat podrobné protokoly pro všechna spuštění, upravte sestavení, přejděte na kartu Proměnné a přidejte proměnnou s názvem
system.debug
, nastavte její hodnotu natrue
hodnotu a vyberte Povolit ve frontě.Pokud chcete nakonfigurovat podrobné protokoly pro kanál YAML, přidejte
system.debug
proměnnou vvariables
části:variables: system.debug: true
Zobrazení a stažení protokolů
Pokud chcete zobrazit jednotlivé protokoly pro každý krok, přejděte na výsledky sestavení pro spuštění a vyberte úlohu a krok.
Pokud chcete stáhnout všechny protokoly, přejděte na výsledky sestavení pro spuštění, vyberte ...a zvolte Stáhnout protokoly.
Pokud chcete stáhnout všechny protokoly, přejděte na výsledky sestavení pro spuštění a zvolte Stáhnout všechny protokoly jako zip.
Kromě diagnostických protokolů kanálu jsou k dispozici následující specializované typy protokolů a mohou obsahovat informace, které vám pomůžou řešit potíže.
Diagnostické protokoly pracovních procesů
Můžete získat diagnostický protokol dokončeného sestavení, který byl vygenerován pracovním procesem v agentovi sestavení. worker
Vyhledejte soubor protokolu s datem a časovým razítkem dokončeného sestavení. Například, worker_20160623-192022-utc_6172.log
.
Diagnostické protokoly agenta
Diagnostické protokoly agenta poskytují záznam o konfiguraci agenta a o tom, co se stalo při spuštění. agent
Vyhledejte soubory protokolu. Například, agent_20160624-144630-utc.log
. Existují dva druhy souborů protokolu agenta:
Soubor protokolu vygenerovaný při spuštění
config.cmd
. Tento protokol:Zahrnuje tento řádek v horní části:
Adding Command: configure
Zobrazuje provedené volby konfigurace.
Soubor protokolu vygenerovaný při spuštění
run.cmd
. Tento protokol:Nelze otevřít, dokud se proces neukončil.
Pokouší se připojit k vaší organizaci Azure DevOps nebo k Team Foundation Serveru.
Zobrazuje, kdy byla každá úloha spuštěna a jak byla dokončena.
Oba protokoly ukazují, jak se detekovaly a nastavily možnosti agenta.
Další protokoly
V diagnostických protokolech najdete environment.txt
a capabilities.txt
.
Soubor environment.txt
obsahuje různé informace o prostředí, ve kterém byl spuštěný váš build. Patří sem informace o tom, jaké úlohy se spouští, jestli je povolená brána firewall, informace o verzi PowerShellu a některé další položky. Tato data průběžně přidáváme, aby byla užitečnější.
Soubor capabilities.txt
poskytuje čistý způsob, jak zobrazit všechny funkce nainstalované na počítači sestavení, na který jste spustili sestavení.
Protokoly trasování HTTP
- Použití integrovaného trasování HTTP
- Použití úplného trasování HTTP – Windows
- Použití úplného trasování HTTP – macOS a Linux
Důležité
Trasování HTTP a trasovací soubory můžou obsahovat hesla a další tajné kódy. Neposílejte je na veřejné weby.
Použití integrovaného trasování HTTP
Pokud je váš agent verze 2.114.0 nebo novější, můžete trasovat hlavičky provozu HTTP a zapisovat je do diagnostického protokolu. Před spuštěním agenta.listener nastavte proměnnou VSTS_AGENT_HTTPTRACE
prostředí.
Windows:
set VSTS_AGENT_HTTPTRACE=true
macOS/Linux:
export VSTS_AGENT_HTTPTRACE=true
Použití úplného trasování HTTP – Windows
Spusťte Fiddler.
Doporučujeme naslouchat jenom provozu agenta. Vypnutý provoz zachytávání souborů > (F12)
Povolte dešifrování provozu HTTPS. Nástroje > Fiddler Options > HTTPS tab. Dešifrování provozu HTTPS
Dejte agentu vědět, že používá proxy server:
set VSTS_HTTP_PROXY=http://127.0.0.1:8888
Spusťte agenta interaktivně. Pokud běžíte jako služba, můžete nastavit jako proměnnou prostředí v ovládacích panelech účtu, na kterém je služba spuštěná.
Restartujte agenta.
Použití úplného trasování HTTP – macOS a Linux
K zachycení trasování protokolu HTTP agenta použijte Charles Proxy (podobně jako Fiddler ve Windows).
Spusťte Charles Proxy.
Charles: Karta SSL nastavení > proxy proxy serveru>. Povolte. Přidejte adresu URL.
Charles: Proxy > Mac OSX Proxy. Doporučujeme zakázat jenom provoz agenta.
export VSTS_HTTP_PROXY=http://127.0.0.1:8888
Spusťte agenta interaktivně. Pokud je spuštěná jako služba, můžete ji nastavit v souboru .env. Viz služba nix
Restartujte agenta.