VSPerfCmd
Aktualisiert: November 2007
Mithilfe des VSPerfCmd-Tools wird das Erfassen von Leistungsdaten gestartet und beendet. Es verwendet die folgende Syntax:
VSPerfCmd [/U] [/options]
In der folgenden Tabelle werden die Optionen des VSPerfCmd-Tools beschrieben:
Option |
Beschreibung |
U |
Umgeleitete Konsolenausgaben sind als Unicode geschrieben. Muss erste angegebene Option sein. |
Start:mode |
Startet VSPerfMon und wartet, bis es initialisiert ist. Erfordert den Output-Schalter. Für mode ist einer der folgenden Werte möglich: COVERAGE – erfasst Codeabdeckungsdaten SAMPLE – erfasst Samplingdaten TRACE – erfasst Instrumentationsdaten |
Output:filename |
Legt den Namen der Ausgabedatei fest. |
CrossSession|CS |
Aktiviert die prozessübergreifende Profilerstellung. Die Optionen CROSSSESSION und CS werden beide unterstützt. |
User:[domain\]username |
Wird mit START-Option verwendet. Ermöglicht Clientzugriff auf den Monitor über das angegebene Konto. |
WaitStart[:n] |
Wartet darauf, dass die Protokollierung für die Datenerfassung initialisiert wird. Wenn n angegeben ist, wartet VSPerfCmd mindestens n Sekunden. Wenn n nicht angegeben wird, wartet VSPerfCmd endlos lange. Dies vereinfacht die Verwendung von VSPerfCmd im Rahmen eines Batchprozesses. |
Counter:cfg |
Wenn die Samplingmethode für die Profilerstellung verwendet wird, wird ein CPU-Indikator angegeben sowie die Anzahl der als Samplingintervall zu verwendenden Ereignisse. Sie können nur für einen Zählerwert ein Sampling ausführen. Wenn die Instrumentationsmethode für die Profilerstellung verwendet wird, gibt diese einen CPU-Indikator an, der an jedem Instrumentationspunkt aufzulisten ist. Sie können mehrere Indikatordaten sammeln, indem Sie mehrere Indikatoroptionen angeben (nur Instrumentation). Verwenden Sie die folgende Syntax, um die Indikatordaten (cfg) anzugeben: CounterName[,Reload[,FriendlyName]]
|
QueryCounters |
Zeigt eine Liste mit für die Plattform gültigen Indikatoren an. |
WinCounter:path |
Gibt einen Windows-Leistungsindikator an, der in den Markierungsdaten enthalten sein soll. path ist eine Windows-Leistungsindikator-Zeichenfolge im PDH-Zählerpfadformat. Beispiele: \Processor(0)\% Processor Time \System\Context Switches/sec |
AutoMark:n |
Gibt das Zeitintervall (in Millisekunden) zwischen automatischen Markierungen an, wenn Sie /WINCOUNTER verwenden. Gerundet auf die nächsten 500 ms. Verwenden Sie 0, um automatische Markierungen zu deaktivieren. (Standard=500 ms, falls nicht angegeben) |
Events:option |
EVENTS-Option steuert die Event Trace Window-Ereignissammlung (ETW). Die erfassten Daten werden vom ETW-Anbieter bereitgestellt. Das option Format lautet folgendermaßen: <on | off>, <guid>[,flags[,level]] <on | off>, <Anbietername>[,flags[,level]] guid – die GUID des Steuerelements des Anbieters. Alternativ kann auch der Name eines Anbieters anstatt der GUID angegeben werden, wenn dieser bei WMI registriert ist. flags – ein mit dem Präfix '0x' versehener hexadezimaler Flagwert. Dieser Wert wird vom Ereignisanbieter definiert. Weitere Informationen finden Sie in der Dokumentation zum ETW-Anbieter. level – bestimmt die Menge der zu erfassenden Informationen. Dieser Wert wird vom Ereignisanbieter definiert. Weitere Informationen finden Sie in der Dokumentation zum ETW-Anbieter.
Wichtiger Hinweis:
Wenn CLR-ETW-Ereignisse aktiviert sind, werden zusätzliche Startdaten auch im Ablaufverfolgungsansichtsbericht erfasst. Verwenden Sie den folgenden Befehl, um Startereignisse von der Anzeige im Bericht auszuschließen:C:\<Pfad>VSPerfCmd -events on, \".NET Common Language Runtime\", 0x7fffffff, 5 Wenn Sie die Startereignisse nicht ausschließen, da diese Ereignisse nicht in der MOF-Datei (Managed Object Format) angezeigt werden, werden sie im Bericht als GUIDS angezeigt. Weitere Informationen hierzu finden Sie unter Sample Managed Object Format (MOF) File.
Zudem kann die EVENTS-Option mit folgenden allgemeinen Kerneloptionen verwendet werden: on, option[,option] wobei option einen der folgenden Werte aufweisen kann: Process – Prozessereignisse Thread – Threadereignisse Image – Abbildlad- und Abbildentladereignisse Disk – Datenträger-E/A-Ereignisse File – Datei-E/A-Ereignisse Hardfault – Hardwareseitenfehler Pagefault – Softwareseitenfehler Network – Netzwerkereignisse Registry - Registrierungszugriffsereignisse Beachten Sie, dass der Kernelprovider nur aktiviert werden kann. Er ist erst deaktiviert, und seine Flags können erst bearbeitet werden, wenn der Monitor heruntergefahren ist. |
Status |
Der Status, der für die Prozesse gilt, für die eine Profilerstellung durchgeführt wird. Im Status werden Prozesse und Threads und der zugehörige aktuelle Profilzustand (On/Off) aufgeführt. Wenn ein Prozess z. B. beendet wurde, gibt STATUS dies nicht im Bericht an. Es wird angezeigt, dass für den Prozess ein Profil erstellt wird oder nicht. |
ShutDown[:n] |
Wartet darauf, dass überwachte Anwendungen heruntergefahren oder getrennt werden, und beendet VSPerfMon.exe und wartet dann darauf, dass der Prozess des Herunterfahrens abgeschlossen wird. Wenn n angegeben ist, wartet VSPerfCmd mindestens n Sekunden. Wenn n nicht angegeben wird, wartet VSPerfCmd endlos lange. Dies vereinfacht die Verwendung von VSPerfCmd im Rahmen eines Batchprozesses. |
GlobalOn |
Die GLOBALON-Option aktiviert die Profilerstellung nach einem GLOBALOFF. Intern legt die GLOBALON-Option die globale Start/Stop-Anzahl auf 1 fest. Weitere Informationen finden Sie unter GLOBALOFF. |
GlobalOff |
Die GLOBALOFF-Option deaktiviert alle Profilerstellungen, und es werden keine Daten erfasst. Durch diese Option wird die Leistungssitzung nicht heruntergefahren. Sie können diese Option verwenden, damit während des Anwendungsstarts oder der Initialisierungsphase keine Daten erfasst werden. So vermeiden Sie das Erfassen irrelevanter Daten |
ProcessOn:pid |
PROCESSON startet die Profilerstellung eines bestimmten Prozesses mithilfe der zugehörigen Prozess-ID (pid) nach einem Aufruf von PROCESSOFF neu. Intern legt die PROCESSON-Option die Start/Stop-Anzahl für den angegebenen Prozess auf 1 fest. |
ProcessOff:pid |
Die PROCESSOFF-Option beendet die Profilerstellung und die Datenerfassung eines bestimmten Prozesses mithilfe der zugehörigen Prozess-ID (pid). Andere Prozesse oder Threads setzen die Datenerfassung fort. Dies ist hilfreich, wenn Sie vermeiden möchten, dass Daten erfasst werden, bevor der Prozess einen bestimmten Zustand erreicht. Mithilfe der PROCESSON-Option können Sie die Datenerfassung starten, sobald der Prozess einen bestimmten Zustand erreicht hat. Intern legt PROCESSOFF die Start/Stop-Anzahl für den angegebenen Prozess auf 0 (null) fest. |
ThreadOn:tid |
THREADON startet die Profilerstellung eines bestimmten Threads mithilfe der zugehörigen Thread-ID (tid) nach einem Aufruf von THREADOFF neu. Intern legt die THREADON-Option die Start/Stop-Anzahl für den angegebenen Thread auf 1 fest. Diese Option ist nur im TRACE-Modus gültig. |
ThreadOff:tid |
Die THREADOFF-Option beendet die Profilerstellung und Datenerfassung eines bestimmten Threads mithilfe der zugehörigen Thread-ID (tid). Andere Prozesse oder Threads setzen die Datenerfassung fort. Dies ist hilfreich, wenn Sie vermeiden möchten, dass Daten erfasst werden, bevor der Thread einen bestimmten Zustand erreicht. Mithilfe der THREADON-Option können Sie die Datenerfassung starten, sobald der Thread einen bestimmten Zustand erreicht hat. Intern legt THREADOFF die Start/Stop-Anzahl für den angegebenen Thread auf 0 (null) fest. Diese Option ist nur im TRACE-Modus gültig. |
MARK:MarkNum[,MarkText] |
Fügt eine Markierung in den globalen Ereignisstream ein (optional mit Text). Dies ist hilfreich, wenn Sie die Daten zwischen zwei Markierungen untersuchen möchten. marknum – ein beliebiger Wert des Datentyps ULONG Alternativ können Sie die MarkProfile-API im Code anrufen, um bestimmte Bereiche der Anwendung zu kennzeichnen. Diese Informationen sind nur im Aufrufablaufverfolgungsbericht verfügbar. |
Optionen der Samplingmethode
Die folgenden Optionen sind nur im SAMPLE-Modus verfügbar:
Option |
Beschreibung |
---|---|
Launch:Ausführbar |
Startet den angegebenen Befehl und fügt den samplingbasierten Profiler an. |
Args:Arguments |
Argumente für die gestartete Anwendung. |
Console |
Startet den angegebenen Befehl in einer neuen Konsole. |
Attach:PID[,PID] |
Fügt den samplingbasierten Profiler an die angegebenen Prozess-IDs an – PID oder Prozessname. |
Detach:PID[,PID] |
Trennt den samplingbasierten Profiler von den angegebenen Prozess-IDs – PID oder Prozessname. |
Detach |
Trennt den samplingbasierten Profiler von allen Prozessen. |
GC[:Allocation|:Lifetime] |
Diese Option ist nur im Samplingmodus verfügbar. Mit ihr wird die verwaltete Speicherprofilerstellung aktiviert. Es ist möglich, die Ablaufverfolgung nur für Zuordnungen (GC:allocation) oder für Zuordnungen und die Lebensdauer von Objekten (GC:lifetime) zu aktivieren. In der Standardeinstellung wird sie nur für Zuordnungen aktiviert. Gültig nur mit der /LAUNCH-Option. |
PF[:n] |
Führt ein Sampling bei jedem x-ten Seitenfehler durch (Standard=10). |
Sys[:n] |
Führt ein Sampling bei jedem x-ten Systemaufruf durch (Standard=10). |
Timer[:n] |
Führt ein Sampling bei jedem x-ten Zyklus durch (Standard=10000000). |
Optionen der Dienstkomponente und Gerätetreiber für den Kernelmodus
Die folgenden Optionen unterstützen Komponenten für Profilerstellungsdienste oder Gerätetreiber für den Kernelmodus. Durch diese Optionen werden die Profilerstellungsberechtigungen festgelegt. Sie müssen von einer Befehlszeilenkonsole unter einem Administratorkonto ausgeführt werden. Weitere Informationen finden Sie unter Using the Run As Command.
Option |
Beschreibung |
---|---|
Admin:Security <ALLOW|DENY> Right[ Right] <User|Group> |
Gewährt oder verweigert dem angegebenen Benutzer oder der angegebenen Gruppe Zugriff auf die Profilerstellungsdienste. Right kann Folgendes sein: CrossSession: Gewährt dem Benutzer Zugriff auf den Dienst für die sitzungsübergreifende Profilerstellung. SampleProfiling: Gewährt dem Benutzer Zugriff auf den Treiber für die Sampling-Profilerstellung. Wird auch für den Zugriff auf Kernelübergangsinformationen während der Erstellung von Ablaufverfolgungsprofilen verwendet. FullAccess: Gewährt dem Benutzer Zugriff sowohl auf CrossSession als auch auf SampleProfiling. |
Admin:Security, List |
Listet den aktuellen Zustand von Profilerstellungsdiensten und Benutzerberechtigungen auf. |
Admin: <Dienst|Treiber><START|STOP|INSTALL|UNINSTALL> |
Startet, beendet, installiert oder deinstalliert die Komponente (Dienst) für den Profilerstellungsdienst oder den Gerätetreiber (Treiber) für den Kernelmodus. |
Admin: <Dienst|Treiber>AutoStart <ON|OFF> |
Aktiviert oder deaktiviert den automatischen Start des Profilerstellungsdienstes (Dienst) oder des Gerätetreibers (Treiber) für den Kernelmodus nach einem Neustart. |
VsPerfDrv.sys
In früheren Profilerversionen wurde die Erfassung von CPU-Kernelmodusanwendungen mit VSPerfDrv.Sys unterstützt. VsPerfDrv.sys ist veraltet. Verwenden Sie die VsPerfCmd ADMIN-Optionen für diese Funktionalität.
Siehe auch
Referenz
Definitionen der Spalten in den Berichten der Profilerstellungstools