Megosztás a következőn keresztül:


Szimbólumletöltő (dotnet-symbol)

Ez a cikk a következőre vonatkozik: ✔️ .NET Core 2.1 SDK és újabb verziók

Telepítés

A NuGet-csomag legújabb kiadási verziójának dotnet-symbol telepítéséhez használja a dotnet eszköz telepítési parancsát:

dotnet tool install --global dotnet-symbol

Szinopszis

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

Leírás

A dotnet-symbol globális eszköz letölti az alapvető memóriaképek és minidumpok hibakereséséhez szükséges fájlokat (szimbólumokat, DAC-okat, modulokat stb.). Ez hasznos lehet egy másik gépen rögzített memóriaképek hibakereséséhez. dotnet-symbol a memóriakép elemzéséhez szükséges modulokat és szimbólumokat töltheti le.

Beállítások

  • --microsoft-symbol-server

    Szimbólumkiszolgáló elérési útjának hozzáadása http://msdl.microsoft.com/download/symbols (alapértelmezett).

  • --server-path <symbol server path>

    Adjon hozzá egy szimbólumkiszolgálót a kiszolgáló elérési útjára.

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

    Hitelesített szimbólumkiszolgáló hozzáadása a kiszolgáló elérési útvonalához egy személyes hozzáférési jogkivonat (PAT) használatával.

  • --cache-directory <file cache directory>

    Hozzáad egy gyorsítótárkönyvtárat.

  • --recurse-subdirectories

    Bemeneti fájlok feldolgozása az összes alkönyvtárban.

  • --host-only

    Töltse le csak a gazdagépprogramot (vagyis a dotnetet), amelyre az lldb-nek szüksége van a magok betöltéséhez.

  • --symbols

    Szimbólumfájlok letöltése (.pdb, .dbg, .törpe).

  • --modules

    Töltse le a modulfájlokat (.dll, .so, .dylib).

  • --debugging

    Töltse le a speciális hibakeresési modulokat (DAC, DBI, SOS).

  • --windows-pdbs

    Kényszerítse a Windows PDF-fájlok letöltését, ha hordozható PDF-ek is elérhetők.

  • -o, --output <output directory>

    Állítsa be a kimeneti könyvtárat. Ellenkező esetben írjon a bemeneti fájl mellé (alapértelmezett).

  • -d, --diagnostics

    Diagnosztikai kimenet engedélyezése.

  • -h|--help

    Parancssori súgót jelenít meg.

Szimbólumok letöltése

A memóriaképfájlon való futtatás dotnet-symbol alapértelmezés szerint letölti a memóriakép hibakereséséhez szükséges összes modult, szimbólumot és DAC/DBI-fájlt, beleértve a felügyelt szerelvényeket is. Mivel az SOS mostantól szükség esetén letölthet szimbólumokat, a legtöbb Linux-mag memóriaképe elemezhető az lldb használatával, csak a gazdagép (dotnet) és a hibakeresési modulokkal. Az lldb-futtatással történő központi memóriakép diagnosztizálásához szükséges fájlok lekérése:

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

Hibaelhárítás

  • 404 Nem található a szimbólumok letöltése közben.

    A szimbólumok letöltése csak a hivatalos csatornákon keresztül beszerzett hivatalos .NET Core-futtatókörnyezeti verziókhoz támogatott, például a hivatalos webhelyhez és a dotnet telepítési szkriptjeinek alapértelmezett forrásaihoz. A hibakeresési fájlok letöltése során 404-ben észlelt hiba azt jelezheti, hogy a memóriakép egy .NET Core-futtatókörnyezettel jött létre egy másik forrásból, például egy helyi forrásból vagy egy adott Linux-disztribúcióból, vagy olyan közösségi webhelyekről, mint az archlinux. Ilyen esetekben a hibakereséshez szükséges fájlokat (dotnet, libcoreclr.so és libmscordaccore.so) ki kell másolni ezekből a forrásokból vagy abból a környezetből, amelyben a memóriaképfájlt létrehozták.

Lásd még