Sdílet prostřednictvím


Postupy: Připojení profileru k webové aplikaci ASP.NET ke shromažďování dat paměti pomocí příkazového řádku

Toto téma popisuje způsob použití nástrojů příkazového řádku nástrojů profilování systému Visual Studio k připojení profilování k webové aplikaci ASP.NET a ke shromažďování dat o počtu a velikosti přidělení paměti rozhraním .NET Framework.Lze také shromažďovat data o životnosti objektů v paměti rozhraní .NET Framework.

[!POZNÁMKA]

Nástroje příkazového řádku balíku nástrojů pro profilaci jsou umístěny v podadresáři \Team Tools\Performance Tools instalačního adresáře aplikace Visual Studio.Na 64bitových počítačích jsou k dispozici 64bitové i 32bitové verze nástrojů.Chcete-li využívat nástroje příkazového řádku profileru, je nezbytné přidat cestu k nástrojům do proměnné prostředí PATH v okně příkazového řádku nebo do příkazu samého.Další informace naleznete v tématu Určení cesty k nástrojům příkazového řádku pro profilaci.

Chcete-li shromažďovat data z webové aplikace ASP.NET je nutné použít nástroj VSPerfCLREnv.cmd k inicializaci příslušných proměnných prostředí v počítači, který je hostitelem webové aplikace ASP.NET.Poté je nutné restartovat počítač, pokud chcete nakonfigurovat webový server pro profilování.

Poté použijte nástroj VSPerfCmd.exe k připojení profilování k pracovnímu procesu technologie ASP.NET, který je hostitelem webu.Když je profiler připojen k aplikaci, lze pozastavit a obnovit sběr dat.

Chcete-li ukončit relaci profilování, profiler nesmí být již připojen k aplikaci a musí být explicitně vypnut.Ve většině případů doporučujeme na konci relace vyčistit proměnné prostředí profilování.

Připojení profileru

Připojení profileru k webové aplikaci ASP.NET

  1. Otevřete okno příkazového řádku.

  2. Inicializujte proměnné prostředí pro profilování.Zadejte:

    VSPerfClrEnv {/globalsamplegc | /globalsamplegclife} [/samplelineoff]

    • Možnosti /globalsamplegc a /globalsamplegclife určují typ dat paměti pro sběr.

      Určete pouze jednu z následujících možností.

      Možnost

      Description

      /globalsamplegc

      Umožňuje sběr dat přidělení paměti.

      /globalsamplegclife

      Umožňuje sběr dat přidělení paměti a životního cyklu objektů.

    • Možnost /samplelineoff zakáže přiřazení shromážděných dat ke konkrétnímu zdroji řádků kódu.Pokud je tato možnost zadána, jsou data přiřazena na úrovni funkce.

  3. Pro uložení nového nastavení prostředí je třeba restartovat počítač.

  4. Otevřete okno příkazového řádku.V případě potřeby nastavte proměnné prostředí profilování.

  5. Spusťte profiler.Zadejte:

    VSPerfCmd /start:sample /output**:**OutputFile [Options]

    • Možnost /start:sample inicializuje profiler.

    • Možnost **/output:**OutputFile je vyžadována s možností /start.OutputFile určuje název a umístění souboru dat profilování (.vsp).

    S možností /start:sample lze použít kteroukoli z následujících možností.

    [!POZNÁMKA]

    Možnosti /user a /crosssession jsou obvykle požadovány pro aplikace ASP.NET.

    Možnost

    Description

    /user:[Domain\]UserName

    Určuje doménu a uživatelské jméno účtu vlastnícího pracovní proces ASP.NET.Tato možnost je vyžadována, pokud je proces spuštěn pod jiným uživatelem, než je přihlášený uživatel.Vlastník procesu je uveden ve sloupci Uživatelské jméno na záložce Procesy ve Správci úloh systému Windows.

    /crosssession

    Umožňuje profilování procesů v jiných přihlašovacích relacích.Tato možnost je vyžadována, je-li aplikace ASP.NET spuštěna v jiné relaci.Identifikátor relace je vypsán ve sloupci ID relace na záložce Procesy ve Správci úloh systému Windows./CS může být zadán jako zkratka pro /crosssession.

    /waitstart [:Interval]

    Určuje počet sekund, po které se má čekat na inicializaci profileru, než je vrácena chyba.Není-li zadán parametr Interval, čeká profiler neomezeně dlouho.Ve výchozím nastavení příkaz /start vrátí hodnotu okamžitě.

    /wincounter:WinCounterPath

    Určuje čítač výkonu systému Windows, který má být shromážděn během profilování.

    /automark:Interval

    Použijte pouze spolu s možností /wincounter.Určuje počet milisekund mezi událostmi sběru čítače výkonu systému Windows.Výchozí hodnota je 500 ms.

    /events:Config

    Určuje událost ETW, která má být shromážděna během profilování.Události trasování událostí pro Windows jsou shromážděny v samostatném souboru (.etl).

  6. Spusťte webovou aplikaci ASP.NET obvyklým způsobem.

  7. Připojte profilování k pracovnímu procesu technologie ASP.NET.Zadejte:

    VSPerfCmd /attach:{PID|ProcName} [/targetclr**:**Version]

    • Identifikátor procesu (PID) určuje identifikátor procesu nebo název procesu pracovního procesu technologie ASP.NET.ID všech spuštěných procesů lze zobrazit ve Správci úloh systému Windows.

    • **/targetclr:**Version určuje verzi modulu CLR (Common Language Runtime), která má být profilována v případě, že je do aplikace načtena více než jedna verze modulu.

Řízení sběru dat

Pokud je aplikace spuštěna, může být sběr dat řízen spuštěním nebo zastavením zápisu dat do profilovacích dat použitím možností příkazu VSPerfCmd.exe.Řízení sběru dat umožňuje shromažďovat data pro určitou část programu, například spouštění či ukončování aplikace.

Spuštění a zastavení sběru dat

  • Následující páry možností VSPerfCmd spouští a zastavují sběr dat.Každou možnost zadejte na samostatný příkazový řádek.Sběr dat lze zapnout a vypnout několikrát.

    Možnost

    Description

    /globalon /globaloff

    Spustí (/globalon) nebo zastaví (/globaloff) sběr dat pro všechny procesy.

    /processon:PID/processoff:PID

    Spustí (/processon) nebo zastaví (/processoff) sběr dat pro proces určený identifikátorem PID.

    /attach:{PID|ProcName} /detach[:{PID|:ProcName}]

    /attach spustí sběr dat pro proces určený identifikátorem procesu nebo názvem procesu./detach zastaví sběr dat pro zadaný proces nebo pro všechny procesy, pokud konkrétní proces není zadán.

Ukončení relace profilování

Chcete-li ukončit relaci profilování, musí být profilování odpojeno od webové aplikace.Sběr dat z aplikace, která je profilována metodou vzorkování, lze zastavit pomocí restartování pracovního procesu technologie ASP.NET nebo voláním možnosti VSPerfCmd /detach.Poté je nutné zavolat možnost VSPerfCmd /shutdown, čímž se profilování vypne a uzavře soubor dat profilování.Příkaz VSPerfClrEnv /globaloff vymaže proměnné prostředí profilování, ale konfigurace systému není obnovena, až do restartování počítače.

Ukončení relace profilování

  1. Chcete-li odpojit profiler od cílové aplikace, proveďte jeden z následujících kroků:

    • Zadejte VSPerfCmd /detach

      -nebo-

    • Zavřete pracovní proces technologie ASP.NET.Zadejte:

    IISReset /stop

  2. Ukončete profiler.Zadejte:

    VSPerfCmd /shutdown

  3. (Volitelné) Vyčistěte proměnné prostředí pro profilování.Zadejte:

    VSPerfCmd /globaloff

  4. Restartujte počítač.V případě potřeby restartujte službu IIS.Zadejte:

    IISReset /start

Viz také

Koncepty

Profilace webových aplikací ASP.NET z příkazového řádku

Další zdroje

Zobrazení dat paměti .NET nástrojů pro profilaci