Sdílet prostřednictvím


Downloader symbolů (dotnet-symbol)

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

Instalace

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

dotnet tool install --global dotnet-symbol

Synopse

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

Description

Globální dotnet-symbol nástroj stahuje soubory (symboly, DAC, moduly atd.), které jsou potřeba k ladění výpisů paměti jádra 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 stáhnout 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 pro načítání výpisů paměti jádra.

  • --symbols

    Stáhněte si soubory 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ář. V opačném případě zapište vedle vstupního souboru (výchozí).

  • -d, --diagnostics

    Povolte výstup diagnostiky.

  • -h|--help

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

Stažení symbolů

Spuštěním dotnet-symbol v souboru s výpisem paměti se ve výchozím nastavení stáhnutí všech modulů, symbolů a souborů DAC/DBI potřebných 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ů linuxových jader je možné analyzovat pomocí databáze lldb pouze s hostitelskými moduly (dotnet) a moduly ladění. Pokud chcete získat tyto soubory potřebné k diagnostice výpisu paměti jádra pomocí nástroje lldb, spusťte následující příkaz:

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

Řešení 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 je oficiální web a výchozí zdroje v instalačních skriptech dotnet. Chyba 404 při stahování souborů ladění může znamenat, že výpis paměti byl vytvořen pomocí modulu runtime .NET Core z jiného zdroje, například z místního zdroje nebo pro konkrétní distribuci Linuxu nebo z komunitních webů, jako je archlinux. V takových případech by měl být soubor potřebný pro ladění (dotnet, libcoreclr.so a libmscordaccore.so) zkopírován z těchto zdrojů nebo z prostředí, ve kterých byl soubor s výpisem paměti vytvořen.

Viz také