Sdílet prostřednictvím


Stažení symbolu (dotnet-symbol)

Tento článek se vztahuje na: ✔️ .NET Core 2.1 SDK a novější verze

Instalace

Pokud chcete nainstalovat nejnovější verzi dotnet-symbol balíčku NuGet, použijte příkaz dotnet tool install :

dotnet tool install --global dotnet-symbol

Synopse

dotnet-symbol [-h|--help] [options] <FILES>

Popis

Globální dotnet-symbol nástroj stáhne soubory (symboly, DAC, moduly atd.) potřebné k ladění základních výpisů paměti a minidumps. To může být užitečné při ladění výpisů paměti zachycených na jiném počítači. dotnet-symbol může stahovat moduly a symboly potřebné k analýze výpisu.

Možnosti

  • --microsoft-symbol-server

    Přidat http://msdl.microsoft.com/download/symbols cestu k serveru symbolů (výchozí).

  • --server-path <symbol server path>

    Přidejte server symbolů do cesty k serveru.

  • authenticated-server-path <pat> <server path>

    Přidejte ověřený server symbolů do cesty k serveru pomocí tokenu PAT (Personal Access Token).

  • --cache-directory <file cache directory>

    Přidá adresář mezipaměti.

  • --recurse-subdirectories

    Zpracování vstupních souborů ve všech podadresářích

  • --host-only

    Stáhněte pouze hostitelský program (tj. dotnet), který lldb potřebuje k načtení výpisů paměti jádra.

  • --symbols

    Stažení souborů symbolů (.pdb, .dbg, .trpaslík).

  • --modules

    Stáhněte si soubory modulu (.dll, .so, .dylib).

  • --debugging

    Stáhněte si speciální ladicí moduly (DAC, DBI, SOS).

  • --windows-pdbs

    Vynuťte stahování souborů PDB systému Windows, pokud jsou k dispozici také přenosné soubory PDB.

  • -o, --output <output directory>

    Nastavte výstupní adresář. Jinak zapište vedle vstupního souboru (výchozí).

  • -d, --diagnostics

    Povolte diagnostický výstup.

  • -h|--help

    Zobrazuje nápovědu k příkazovému řádku.

Stažení symbolů

Spuštěním dotnet-symbol souboru s výpisem paměti se ve výchozím nastavení stáhnou všechny moduly, symboly a soubory DAC/DBI potřebné k ladění výpisu paměti včetně spravovaných sestavení. Vzhledem k tomu, že SOS teď může v případě potřeby stahovat symboly, většinu výpisů paměti jádra Linuxu je možné analyzovat pomocí lldb pouze s hostitelskými moduly (dotnet) a laděním. Pokud chcete získat tyto soubory potřebné k diagnostice výpisu paměti jádra pomocí příkazu lldb, spusťte:

dotnet-symbol --host-only --debugging <dump file path>

Odstraňování potíží

  • 404 Nenalezena při stahování symbolů.

    Stahování symbolů je podporováno pouze pro oficiální verze modulu runtime .NET Core získané prostřednictvím oficiálních kanálů, jako jsou oficiální webové stránky a výchozí zdroje v instalačních skriptech dotnet. Chyba 404 při stahování souborů ladění může znamenat, že se výpis paměti vytvořil s modulem runtime .NET Core z jiného zdroje, například z místního zdroje nebo pro konkrétní linuxovou distribuci nebo z komunitních webů, jako je archlinux. V takových případech by se soubor nezbytný pro ladění (dotnet, libcoreclr.so a libmscordaccore.so) měl zkopírovat z těchto zdrojů nebo z prostředí, ve které byl soubor s výpisem paměti vytvořen.

Viz také