2017-03-23 2 views
1

Étant donnéC# ETW. Comment afficher la pile des appels dans PerfView?

  1. Le fournisseur de ETW de mise en œuvre (héritée de EventSource) avec des événements dynamiques. Nom du fournisseur "IDS-IDComplete-DynamicTrace"

  2. Ma mise en œuvre du service Windows, dans lequel les événements de ETW sont générés

  3. Je collectionne les événements du service à l'aide PerfVev:

PerfView.exe collect ETWTrace.etl /merge /zip /OnlyProviders=*IDS-IDComplete-DynamicTrace

  1. Je vois tous mes événements.

PerfView with my events

Question

Comment puis-je voir la pile d'appel dans PerfVev je peux voir les appels à mon code?

Répondre

1

vous n'avez pas capturé les callstacks. A commandline au gré @StacksEnabled la valeur true pour callstacks de capture: /[email protected]=true:

PerfView.exe collect ETWTrace.etl /merge /zip /Providers=*[email protected]=true 
+0

Est-ce une entrée correcte? PerfView.exe collecter ETWStacksEnabled.etl/merge/zip/OnlyProviders = * ITA-Dynamic-Trace: 0x0004: Verbose: @ StacksEnabled = 'true' "/ StopOnPerfCounter = Processeur:% temps processeur: _Total> 60"/nogui/NoNGenRundown/DelayAfterTriggerSec = 30 – VintVV80

+0

Essayez-le. Je n'utilise pas perfview pour capturer un ETL. J'utilise WPR avec un profil auto-écrit: http://stackoverflow.com/a/30289933/1466046 Ici, je peux mieux contrôler ce que je capture – magicandre1981