Shromažďování diagnostických dat a dat o výkonu technologie IntelliTrace za provozu pomocí Microsoft Monitoring Agenta

Je možné místně sledovat webové aplikace hostované IIS technologie ASP.NET a SharePoint 2010 nebo 2013 aplikací pro chyby, problémy s výkonem nebo jiné problémy s použitím Microsoft Monitoring Agent.Diagnostické události od agenta můžete uložit do souboru protokolu (.iTrace) IntelliTrace.Poté můžete otevřít v protokolu v sadě Visual Studio Ultimate 2013 pro ladění problémů s všechny diagnostické nástroje sady Visual Studio.Můžete také shromažďovat diagnostická data IntelliTrace a metoda data spuštěním agenta v trasování režimu.Microsoft Monitoring Agent lze integrovat s řešení Application Insights a System Center operace Manager.Microsoft Monitoring Agent nezmění prostředí cílovém systému při instalaci.

[!POZNÁMKA]

Můžete také shromažďovat dat diagnostiky a metoda IntelliTrace pro webový server, Sharepoint, WPF a formuláře aplikace pro Windows ve vzdálených počítačích beze změny cílové prostředí pomocí samostatné kolekce IntelliTrace.Má dopad na vyšší výkon než Microsoft Monitoring Agent spuštěn v samostatném kolekce monitorování režimu.Další informace naleznete v tématu Shromažďování diagnostických dat za provozu pomocí samostatného nástroje pro shromažďování dat IntelliTrace.

Pokud používáte System Center 2012, pomocí Microsoft Monitoring Agent nástroje Operations Manager můžete dostávat upozornění o problémech, a vytvořit pracovní položky sady Team Foundation Server s odkazy na uložené protokoly IntelliTrace.Můžete přiřadit tyto pracovní položky ostatním uživatelům pro další ladění.Podívejte se na téma integrace nástroje Operations Manager s vývojové procesy a monitorování se společností Microsoft Monitoring Agent.

Než začnete, zkontrolujte, zda máte odpovídající zdroj a symboly pro kód vytvořený a nasazených.Díky tomu můžete přejít přímo do kódu aplikace při spuštění ladění a procházení diagnostických událostí v protokolu IntelliTrace.Nastavit sestavení tak, aby sady Visual Studio automaticky vyhledat a otevřít odpovídající zdroj pro nasazený kódu.

  1. Nastavte agenta monitorování společnosti Microsoft.

  2. Zahájí monitorování vaší aplikace.

  3. Uložte zaznamenané události.

Krok 1: Nastavení agenta monitorování společnosti Microsoft

Nastavte samostatné agenta na webovém serveru se k provedení místní monitorování beze změny vaší aplikace.Pokud používáte System Center 2012, naleznete v části instalace agenta monitorování společnosti Microsoft.

Nastavit samostatné agenta

  1. Ujistěte se, že:

    • Webový server běží podporované verze služby Internet Information Services (IIS).

    • Webový server má rozhraní .NET Framework 3.5, 4 nebo 4.5.

    • Webový server je spuštěn prostředí Windows PowerShell 3.0 nebo novější.Co když budu mít prostředí Windows PowerShell 2.0?

    • Máte oprávnění správce na webovém serveru se ke spuštění příkazů prostředí PowerShell a recyklace fondu aplikací při spuštění sledování.

    • Jsme odinstalovat všechny starší verze agenta monitorování společnosti Microsoft.

  2. Stáhněte si zdarma Microsoft Monitoring Agent, 32bitovou verzi MMASetup i386.exe nebo 64bitovou verzi MMASetup-AMD64.exe, z Microsoft Download Center na webový server.

  3. Spuštění staženého spustitelného souboru ke spuštění Průvodce instalací.

  4. Vytvoření zabezpečeného adresáře na webovém serveru pro ukládání protokolů IntelliTrace, například C:\IntelliTraceLogs.

    Ujistěte se, tento adresář vytvořit před spuštěním sledování.Chcete-li předejít, zpomalením vaší aplikace, vyberte umístění na místním disku vysokorychlostní, který není velmi aktivní.

    Poznámka k zabezpečeníPoznámka k zabezpečení

    IntelliTrace protokoly mohou obsahovat osobní a citlivá data.Omezte pouze identity, které musí práci se soubory tohoto adresáře.Zkontrolujte zásady ochrany osobních údajů vaší společnosti.

  5. Ke spuštění podrobné úrovni funkce monitorování nebo k monitorování aplikace SharePoint poskytují fond aplikací, který je hostitelem vaší webové aplikaci nebo aplikace služby SharePoint ke čtení a zápisu oprávnění adresář protokolu IntelliTrace.Jak mohu nastavit oprávnění pro fond aplikací?

Dotazy a odpovědi

D: Co když budu mít prostředí Windows PowerShell 2.0?

O: důrazně doporučujeme používat prostředí PowerShell 3.0.Jinak budete muset importovat rutiny prostředí PowerShell agenta monitorování společnosti Microsoft při každém spuštění PowerShell.Také nebudete mít přístup k dispozici ke stažení obsahu nápovědy.

  1. Otevřít prostředí Windows PowerShell nebo ISE v prostředí Windows PowerShell okno příkazového řádku jako správce.

  2. Importujte modul Microsoft Monitoring Agent PowerShell z výchozí umístění instalace:

    PS C:>Import-Module "C:\Program Files\Microsoft Monitoring Agent\Agent\PowerShell\Microsoft.MonitoringAgent.PowerShell\Microsoft.MonitoringAgent.PowerShell.dll"

  3. Navštivte web TechNet Chcete-li získat nejnovější obsah nápovědy.

D: Jak mohu nastavit oprávnění pro fond aplikací?

O: pomocí systému Windows icacls příkaz, nebo použijte Průzkumníka Windows (nebo File Explorer).Příklad:

  • Chcete-li nastavit oprávnění s Windows icacls příkaz:

    • Pro webovou aplikaci v DefaultAppPool fond aplikací:

      / ICACLS "C:\IntelliTraceLogs" grant "IIS APPPOOL\DefaultAppPool": OBDX

    • Pro aplikaci služby SharePoint v SharePoint – 80 fond aplikací:

      / ICACLS "C:\IntelliTraceLogs" grant "IIS APPPOOL\SharePoint - 80": OBDX

    -nebo-

  • Chcete-li nastavit oprávnění pomocí programu Průzkumník Windows (nebo File Explorer):

    1. Otevřít vlastnosti pro adresář protokolu IntelliTrace.

    2. Na zabezpečení , vyberte upravit, přidat.

    3. Ujistěte se, že objekty integrovaného zabezpečení se zobrazí v vyberte tento typ objektu pole.Pokud se má, volbu typy objektů jej přidat.

    4. Ujistěte se, že se zobrazí v místním počítači z tohoto umístění pole.Pokud se má, volbu umístění ho změnit.

    5. V zadejte názvy objektů k výběru pole, přidejte fondu aplikací pro webovou aplikaci nebo aplikace služby SharePoint.

    6. Zvolte Kontrola názvů k překladu názvu.Klikněte na tlačítko OK.

    7. Zkontrolujte, zda má fond aplikací čtení & provést oprávnění.

Krok 2: Spuštění sledování aplikace

Pomocí prostředí Windows PowerShell Start WebApplicationMonitoring příkaz, který spouští monitorování vaší aplikace.Pokud používáte System Center 2012, naleznete v části monitorování webových aplikací s Microsoft Monitoring Agent.

  1. Na webovém serveru, otevřete prostředí Windows PowerShell nebo ISE v prostředí Windows PowerShell okno příkazového řádku jako správce.

    Otevřete prostředí Windows PowerShell jako správce

  2. Spustit Start WebApplicationMonitoring příkaz, který spouští monitorování vaší aplikace.To restartuje všechny webové aplikace na webovém serveru.

    Zde je krátký syntaxe:

    Start-WebApplicationMonitoring"<appName>"<monitoringMode>"<outputPath>"<UInt32>"<collectionPlanPathAndFileName>"

    Zde je příklad, který používá pouze název webové aplikace a lightweight Monitor režimu:

    PS C:\>Start-WebApplicationMonitoring "Fabrikam\FabrikamFiber.Web" Monitor "C:\IntelliTraceLogs"

    Zde je příklad, který používá cesta služby IIS a lightweight Monitor režimu:

    PS C:\>Start-WebApplicationMonitoring "IIS:\sites\Fabrikam\FabrikamFiber.Web" Monitor "C:\IntelliTraceLogs"

    Po spuštění sledování pause Microsoft Monitoring Agent můžete uvidět, zatímco vaše aplikace restartovat.

    Spustit sledování s MMA potvrzení

    "< název_aplikace >"

    Zadejte cestu k názvu webového serveru a webových aplikací ve službě IIS.Může také zahrnovat cestu ke službě IIS, pokud dáváte přednost.

    "< IISWebsiteName > \ < IISWebAppName >"

    -nebo-

    "IIS:\sites\ < IISWebsiteName > \ < IISWebAppName > "

    Tato cesta můžete najít ve Správci služby IIS.Příklad:

    Cesta k webu služby IIS a webové aplikace

    Můžete také použít Get-webu a získat webovou aplikaci příkazy.

    < monitoringMode >

    Zadejte režim monitorování:

    • Monitor: Záznamu minimální podrobnosti o událostí výjimek a událostí souvisejících s výkonem.V tomto režimu používá výchozí kolekce plán.

    • Trace: Záznam podrobnosti na úrovni funkce nebo sledovat SharePoint 2010 a službu SharePoint 2013 aplikace s použitím zadané kolekce plánu.V tomto režimu by mohlo způsobit svou aplikaci spustit pomaleji.

      • Ujistěte se, že fond aplikací má ke čtení a oprávnění k zápisu do adresáře protokolu IntelliTrace.

      • Jak lze získat většina data bez zpomalování Moje aplikace?

      V tomto příkladu zaznamenává události pro aplikaci pro SharePoint hostované na web služby SharePoint:

      Start-WebApplicationMonitoring "FabrikamSharePointSite\FabrikamSharePointApp" Trace "C:\Program Files\Microsoft Monitoring Agent\Agent\IntelliTraceCollector\collection_plan.ASP.NET.default.xml" "C:\IntelliTraceLogs"

    • Custom: Podrobnosti záznamu vlastní pomocí zadané kolekce vlastní plán.Budete mít k restartování, sledování, je-li upravit plán shromažďování po monitorování již bylo spuštěno.

    "< outputPath >"

    Zadejte cestu k adresáři úplná k ukládání protokolů IntelliTrace.Ujistěte se, tento adresář vytvořit před spuštěním sledování.

    < UInt32 >

    Zadejte maximální velikost protokolu IntelliTrace.Výchozí maximální velikost protokolu IntelliTrace je 250 MB.

    Pokud v protokolu nedosáhne tohoto limitu, agent přepíše nejstarší položky k uvolnění místa pro další položky.Chcete-li tento limit změnit, použijte -MaximumFileSizeInMegabytes možnost nebo upravit MaximumLogFileSize atribut v plánu kolekce.

    "< collectionPlanPathAndFileName >"

    Zadejte úplnou cestu nebo relativní cestu a název souboru plánu kolekce.Tento plán je soubor .xml, který konfiguruje nastavení pro agenta.

    Tyto plány jsou součástí agenta a pracovat s webových aplikací a aplikací služby SharePoint:

    • collection_plan.ASP.NET.default.XML

      Shromažďuje pouze událostmi, jako je například výjimky, událostí souvisejících s výkonem, volání databáze a požadavky webového serveru.

    • collection_plan.ASP.NET.Trace.XML

      Volání funkce úrovni shromažďuje plus všechna data v kolekci výchozí plán.Tento plán je v pořádku pro podrobnou analýzu, ale může zpomalit vaší aplikace.

    Lokalizované verze tyto plány najdete v podsložkách agenta.Můžete také přizpůsobit tyto plány nebo vytvořit vlastní schémata a vyhnout se tak zpomalením vaší aplikace.Zpřístupněte veškeré vlastní plány ve stejném umístění zabezpečené jako agenta.

    Jinou jak lze získat nejvíce dat bez zpomalování Moje aplikace?

    For the more information about the full syntax and other examples, run the get-help Start-WebApplicationMonitoring –detailed command or the get-help Start-WebApplicationMonitoring –examples command.

  3. Chcete-li zkontrolovat stav všech monitorované webové aplikace, spusťte Get-WebApplicationMonitoringStatus příkazu.

Dotazy a odpovědi

O: Jak získat většina data bez zpomalování Moje aplikace?

O: Microsoft Monitoring Agent může shromažďovat velké množství dat a ovlivňovat výkon svou aplikaci v závislosti na data, která zvolíte-li shromažďovat a jak shromažďovat.Zde najdete několik způsobů, jak získat data týkající se většina bez zpomalování svou aplikaci:

  • Pro webové aplikace a služby SharePoint aplikace agent zaznamenává data pro každou aplikaci, který sdílí zadaný fond aplikací.Může dojít ke zpomalení libovolná aplikace, který sdílí stejné fond aplikací, i když můžete omezit kolekci pro moduly pro jednu aplikaci.Chcete-li předejít, zpomalením dalších aplikací, hostování každou aplikaci ve své vlastní fondu aplikací.

  • Zkontrolujte události, pro které agenta shromažďuje data v kolekci plánu.Upravte plán kolekce zakázání události, které nejsou relevantní nebo vás nezajímají.Tím lze vylepšit výkon při spouštění a výkonu za běhu.

    Chcete-li událost zakázat, nastavte enabled atribut pro <DiagnosticEventSpecification> elementu, který chcete false:

    <DiagnosticEventSpecification enabled="false">

    Pokud enabled atribut neexistuje, je událost povolena.

    Příklad:

    • Zakažte Windows Workflow pro aplikace, které nepoužívají Windows Workflow.

    • Zakažte registru pro aplikace, které přístup do registru, ale nezobrazovat problémy s nastavení registru.

  • Zkontrolujte moduly, pro které agenta shromažďuje data v kolekci plánu.Upravte plán kolekce tak, aby obsahoval pouze moduly, které vás zajímají.

    Tím omezíte kolik informací o volání metody a jiná data služby WMI, která agenta shromažďuje při spuštění aplikace a běží.Tato data vám pomůže při krokování kódu při ladění a kontrolu hodnoty předaným a vrácená z volání funkce.

    1. Otevřete plán kolekce.Najít <ModuleList> elementu.

    2. V <ModuleList>, nastavte isExclusionList atribut false.

    3. Použití <Name> elementu, který chcete určit každý modul s jedním z následujících hodnot: název souboru, řetězcovou hodnotu tak, aby obsahoval libovolný modul, jejichž název obsahuje tento řetězec nebo veřejný klíč.

    V tomto příkladu vytvoří seznam, který shromažďuje data pouze z hlavní modul webovou aplikaci Fabrikam vlákna:

    <ModuleList isExclusionList="false">
       <Name>FabrikamFiber.Web.dll</Name>
    </ModuleList>
    

    Chcete-li shromažďovat data z jakékoli modulu, jehož název obsahuje "Fabrikam", vytvořte seznam byste se:

    <ModuleList isExclusionList="false">
       <Name>Fabrikam</Name>
    </ModuleList>
    

    Chcete-li shromažďovat data z modulů tak, že určíte jejich tokenů veřejných klíčů, vytvořte seznam byste se:

    <ModuleList isExclusionList="false">
       <Name>PublicKeyToken:B77A5C561934E089</Name>
       <Name>PublicKeyToken:B03F5F7F11D50A3A</Name>
       <Name>PublicKeyToken:31BF3856AD364E35</Name>
       <Name>PublicKeyToken:89845DCD8080CC91</Name>
       <Name>PublicKeyToken:71E9BCE111E9429C</Name>
    </ModuleList>
    

    D: Proč právě vyloučit modulů místo toho?

    O: ve výchozím nastavení, vyloučit plány kolekce modulů nastavením isExclusionList atribut true.Však to může nadále shromažďovat data z modulů, který není v seznamu kritériím nevyhovují nebo vás, který nemusí zajímají například modulů třetích stran nebo open source.

D: hodnoty se shromažďování agenta?

O: agenta snížit dopad na výkon, shromažďuje pouze tyto hodnoty:

  • Primitivní datové typy, které jsou předána do a vrácená z metody

  • Primitivní datové typy pole na nejvyšší úrovni objekty předaným a vrácená z metody

Předpokládejme, že máte AlterEmployee podpis metody, která přijme celé číslo id a Employee objektu oldemployee:

public Employee AlterEmployee(int id, Employee oldemployee)

Employee Typu má následující atributy: Id, Name, a HomeAddress.Existuje vztah přidružení mezi Employee a Address typu.

Vztah mezi zaměstnancem a adresa

Agent zaznamenává hodnoty pro id, Employee.Id, Employee.Name a Employee vrácená z objektu AlterEmployee metody.Agent však není zaznamenání informací o Address objektu, než bez ohledu na se, zda byla null.Agent také nezaznamená data o místní proměnné v AlterEmployee metodu pouze v případě jiných metod použijete ty místní proměnné jako parametry, které jsou v tomto okamžiku jsou zaznamenány jako parametry metody.

Krok 3: Uložit zaznamenané události

Naleznete-li k chybě nebo problémy výkonem, uložte zaznamenané události do protokolu IntelliTrace.Agent vytvoří protokol pouze v případě, že ji zaznamenané události.Pokud používáte System Center 2012, naleznete v části monitorování webových aplikací s Microsoft Monitoring Agent.

Uložit zaznamenané události, ale pokračovat monitorování

Pokud chcete vytvořit protokolu IntelliTrace, ale nechcete, aby se je znovu svou aplikaci nebo zastavení sledování, použijte následující postup.Agent pokračuje monitorování i v případě, že server nebo aplikace, je restartována.

  1. Na webovém serveru otevřete okno příkazového řádku prostředí Windows PowerShell jako správce.

  2. Spustit kontrolního bodu WebApplicationMonitoring příkaz pro uložení snímků IntelliTrace protokolu:

    Checkpoint-WebApplicationMonitoring"< IISWebsiteName > \ < IISWebAppName >"

    -nebo-

    Checkpoint-WebApplicationMonitoring "IIS:\sites\ < IISWebsiteName > \ < IISWebAppName > "

    Příklad:

    PS C:\>Checkpoint-WebApplicationMonitoring "Fabrikam\FabrikamFiber.Web"

    -nebo-

    PS C:\>Checkpoint-WebApplicationMonitoring "IIS:\sites\Fabrikam\FabrikamFiber.Web"

    For more information, run the get-help Checkpoint-WebApplicationMonitoring –detailed command or the get-help Checkpoint-WebApplicationMonitoring –examples command.

  3. Zkopírujte do protokolu zabezpečení sdílené složky a poté otevřete protokol z počítače, který má Visual Studio Ultimate 2013.

    Poznámka k zabezpečeníPoznámka k zabezpečení

    Opatrnost při sdílení IntelliTrace protokoly vzhledem k tomu, že mohou obsahovat osobní a citlivá data.Ujistěte se, které hráč, který může získat přístup k tyto protokoly má oprávnění k podívejte se na tato data.Zkontrolujte zásady ochrany osobních údajů vaší společnosti.

Next:Diagnose recorded events in Visual Studio Ultimate 2013

Uložit zaznamenané události a zastavit monitorování

Pokud chcete k získání diagnostických informací při reprodukci konkrétním problémem, použijte následující postup.To restartuje všechny webové aplikace na webovém serveru.

  1. Na webovém serveru otevřete okno příkazového řádku prostředí Windows PowerShell jako správce.

  2. Spustit Stop-WebApplicationMonitoring příkaz pro vytvoření protokolu IntelliTrace a zastavit monitorování konkrétní webovou aplikaci:

    Stop-WebApplicationMonitoring"< IISWebsiteName > \ < IISWebAppName >"

    -nebo-

    Stop-WebApplicationMonitoring "IIS:\sites\ < IISWebsiteName > \ < IISWebAppName > "

    Nebo zastavit monitorování všech webových aplikací:

    Stop-WebApplicationMonitoring -All

    Příklad:

    PS C:\>Stop-WebApplicationMonitoring "Fabrikam\iFabrikamFiber.Web"

    -nebo-

    PS C:\>Stop-WebApplicationMonitoring "IIS:\sites\Fabrikam\FabrikamFiber.Web"

    For more information, run the get-help Stop-WebApplicationMonitoring –detailed command or the get-help Stop-WebApplicationMonitoring –examples command.

  3. Zkopírujte do protokolu zabezpečení sdílené složky a poté otevřete protokol z počítače, který má Visual Studio Ultimate 2013.

Next:Diagnose recorded events in Visual Studio Ultimate 2013

Dotazy a odpovědi

D: kde můžete získat další informace?

Blogy

Představujeme službu Microsoft Monitoring Agent

Optimalizace shromažďování snímků IntelliTrace na produkční servery

Diskuzní fóra

Visual Studio diagnostiku