Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Artikel hilft bei der Problembehandlung des WmiPrvse.exe Prozesskontingents, das probleme überschritten hat.
Möglicherweise treten mindestens eine der folgenden Probleme auf:
Mindestens eine Anwendung meldet Fehlercodes oder Meldungen im Zusammenhang mit dem WMI-Anbieterfehler (Windows Management Instrumentation), der in WMI-Fehlerkonstanten aufgeführt ist.
Der WmiPrvse.exe Prozess erreicht regelmäßig oder zeitweise einen bestimmten Speicher, ein Handle oder einen Thread und beendet oder beendet.
Die folgenden Ereignisse werden regelmäßig oder zeitweise im Anwendungsereignisprotokoll protokolliert.
Notiz
Hier sind zwei Ereignisbeispiele. Die Beschreibung des Ereignisses kann sich je nach dem Problem ändern, das dem WmiPrvse.exe Prozess und den beteiligten WMI-Anbietern gegenübersteht.
Log Name: Application Source: Microsoft-Windows-WMI Date: <DateTime> Event ID: 5612 Task Category: None Level: Warning Keywords: User: NETWORK SERVICE Computer: <MachineName> Description: Windows Management Instrumentation has stopped WMIPRVSE.EXE because a quota reached a warning value. Quota: PrivatePageCount Value: 538353664 Maximum value: 536870912 WMIPRVSE PID: 18524 Providers hosted in this process: %systemroot%\system32\wbem\ntevt.dll, %SystemRoot%\System32\wbem\cluswmi.dll, %SystemRoot%\System32\wbem\cluswmi.dll, %systemroot%\system32\wbem\cimwin32.dll
Log Name: Application Source: Microsoft-Windows-WMI Date: <DateTime> Event ID: 5612 Task Category: None Level: Warning Keywords: User: SYSTEM Computer: <MachineName> Description: Windows Management Instrumentation has stopped WMIPRVSE.EXE because a quota reached a warning value. Quota: HandleCount Value: 4099 Maximum value: 4096 WMIPRVSE PID: 4468 Providers hosted in this process: C:\Windows\System32\wbem\WmiPerfClass.dll, %systemroot%\system32\wbem\wmiprov.dll
Wenn ein oder mehrere der oben genannten Probleme (insbesondere Ereignis-ID 5612) auftreten, bedeutet dies, dass einer der WMI-Anbieterprozesse (WmiPrvse.exe) seinen vordefinierten Ressourcenwert überschritten hat und dass der WMI-Dienst die Ausführung als Prozess explizit beendet hat.
Die Abfrage, die vom beendeten WmiPrvse.exe Prozess behandelt wird, und die Anwendung, die den Prozess initiiert, schlägt fehl.
Was ist WmiPrvse.exe?
WmiPrvse.exe ist ein Prozess im Windows-Betriebssystem (Os), der einen oder mehrere WMI-Anbieter hosten kann. Sie wird vom WMI-Dienst verwaltet. Jeder WMI-Anbieter enthält in erster Linie die WMI-Anbieter-DLL-Datei und die WMI-Anbieter-MOF-Datei. Der WMI-Anbieter ist Teil der WMI-Infrastruktur, die Aufgaben vom WMI-Dienst akzeptiert, um WMI-Abfragen zu adressieren oder zu verarbeiten, die von lokalen oder Remoteclients initiiert werden.
Jeder WmiPrvse.exe Prozess verfügt über einen vordefinierten Schwellenwert oder ein Ressourcenkontingent, das er verwenden kann, wenn er aktiv ist. Zum Beispiel:
HandlesPerHost
MemoryAllHosts
MemoryPerHost
ProcessLimitAllHosts
ThreadsPerHost
Die Werte werden als Instanzen unter der WMI-Klasse __ProviderHostQuotaConfiguration definiert.
Ereignis-ID 5612
Ereignis-ID 5612 ist eine der beschreibendsten und nützlichsten Warnmeldungen. Im ersten Ereignisbeispiel meldet das Ereignis, dass die Ressource PrivatePageCount
das Kontingent von 536870912 überschritten und den Wert von 538353664 erreicht hat.
Wenn Ressourcen den Kontingentgrenzwert erreichen oder den Wert überschreiten, wird der WMI-Dienst standardmäßig den Prozess von der weiteren Nutzung explizit beenden.
In diesem Beispiel ist PrivatePageCount
die Ressource eine der Entitäten des Arbeitsspeichers, die pro Host durch die MemoryPerHost
Eigenschaft begrenzt ist.
Das Ereignis listet auch die verschiedenen WMI-Anbieter auf, die im angehaltenen WmiPrvse.exe Prozess gehostet werden.
%systemroot%\system32\wbem\ntevt.dll
%SystemRoot%\System32\wbem\cluswmi.dll
%SystemRoot%\System32\wbem\cluswmi.dll
%systemroot%\system32\wbem\cimwin32.dll
Alle oben aufgeführten Anbieter werden aufgrund des Problems abrupt beendet.
Diagnostizieren des Problems
Die folgenden Szenarien können die Ereignis-ID 5612 verursachen:
- Eine Clientanwendung führt ungewöhnliche, ineffiziente oder große Abfragen aus.
- Der WmiPrvse.exe Prozess gibt keine Ressourcen wie erwartet frei, während eine WMI-Abfrage verarbeitet wird, was zu einem Speicherverlust führt und den WmiPrvse.exe Prozess beendet.
- Der Umfang der Maschinen- oder Umgebungseinrichtung ist groß.
Die Analyse der eingehenden Abfragen kann dabei helfen, die erste Ursache zu ermitteln und das Problem zu lösen. Andernfalls ist eine eingehendere Untersuchung erforderlich, indem ein Microsoft-Supportfall geöffnet wird.
Führen Sie die folgenden Schritte aus, um das Problem zu diagnostizieren:
Verstehen sie das Muster des Problems.
Überprüfen Sie Anwendungsereignisprotokolle und filtern Sie die Ereignis-ID 5612, um die Häufigkeit, den Verlauf und das Muster zu verstehen.
Identifizieren Sie die allgemeinen WMI-Anbieter, die im Ereignis aufgeführt sind.
Die aufgeführten Anbieter können für alle Ereignisse gleich sein. Eine weitere Möglichkeit besteht darin, dass einer der Anbieter mehr Ressourcen verbraucht und dieses Problem verursacht und andere WMI-Anbieter stört. In diesem Fall besteht das Ziel darin, den problematischen Anbieter zu diagnostizieren und zu identifizieren.
Identifizieren Sie die derzeit aktiven WMI-Anbieter, die dieselbe Liste von WMI-Anbietern hosten.
Analysieren Sie die eingehenden Abfragen, die vom in der Ereignis-ID 5612 aufgeführten WmiPrvse.exe Prozess behandelt werden.
Durchlaufen Sie die in den Abschnitten "Analysieren der eingehenden Abfragen", "Überprüfen der WMI-Ablaufverfolgungsdateien" und "Suchen der Client-PIDs, die eine hohe CPU-Auslastung verursachen", in den Abschnitten zur Behandlung von Problemen mit der hohen CPU-Auslastung von WMI. Anschließend können Sie Folgendes identifizieren:
- Der Clientprozess(n)
- Die Abfrage, die zum Problem führt
- Die Häufigkeit der Abfrage
- Der Clientprozess(n)
Clientanwendung führt ungewöhnliche, ineffiziente oder große Abfragen aus.
Wenn eine Clientanwendung abnorme, ineffiziente oder große Abfragen ausführt, kann sie dazu führen, dass der WMI-Anbieter große Mengen von Ressourcen verbraucht.
Überprüfen und verstehen Sie, warum die Anwendung diese Abfrage ausführt und ob sie erforderlich ist. Wenn es in Ihrer Umgebung nicht erforderlich ist, entfernen Sie die Anwendung, oder beenden Sie die Ausführung der Abfrage. Dies sollte dazu beitragen, das Problem zu beheben. Sie können dieses Verhalten mit dem Anwendungsanbieter beheben.
Wenn die Anwendung bekannt ist oder erwartet wird, dass WMI-Abfragen ausgeführt werden, die zu dem WmiPrvse.exe Prozess führen, der stark Ressourcen verbraucht, und es gibt keinen Speicherverlust oder Behandeln von Lecks aus dem WmiPrvse.exe Prozess, erhöhen Sie das Standardkontingentlimit auf doppelte Standardwerte sollte die Situation beheben.
Achtung
- Diese Änderung ist nur wirksam, wenn keine Ressourcen verloren gehen. Andernfalls wird das Problem (Ereignis-ID 5612) nur für eine Weile verzögert und dann mit der Serie beginnen.
- Diese Änderung gilt für alle WMI-Anbieter im System. Dies bedeutet, dass alle WmiPrvse.exe Prozesse den Verbrauch von Ressourcen gemäß dem neuen Kontingentlimit beginnen.
Das Erhöhen des Standardkontingentlimits kann zu einem höheren Verbrauch von Ressourcen wie Arbeitsspeicher, Handles oder CPU führen. Daher wird nicht empfohlen, das Kontingentlimit ohne vorherige Untersuchung und Verständnis des Problems zu erhöhen.
Führen Sie die folgenden Schritte aus, um den Kontingentgrenzwert zu erhöhen:
Öffnen Sie den Windows Management Instrumentation Tester (WBEMTEST) als Administrator, wählen Sie "Verbinden" aus, und stellen Sie eine Verbindung mit dem Namespace "root" her.
Wählen Sie "Enumerationsinstanzen" aus, geben Sie im Dialogfeld "Kursinformationen" __ProviderHostQuotaConfigurationein, und wählen Sie dann "OK" aus. Das Abfrageergebnisfenster wird angezeigt. Doppelklicken Sie dann auf das erste Ergebnis, um die Objekte zu bearbeiten.
Scrollen Sie im Abschnitt "Eigenschaften" nach unten zu der unten genannten Liste, und erhöhen Sie die Ressourcen, indem Sie die Werte dieser Eigenschaften ändern.
Wählen Sie im Objekt-Editor-Fenster " Objekt speichern" aus, schließen Sie das Abfrageergebnisfenster , und beenden Sie dann WBEMTEST.
Starten Sie den WMI-Dienst (Winmgmt) neu, damit die Änderungen wirksam werden.
Der WmiPrvse.exe-Prozess gibt keine Ressourcen wie erwartet frei.
Wenn der WmiPrvse.exe Prozess beim Verarbeiten einer WMI-Abfrage nicht wie erwartet Ressourcen freigibt, führt er zu einem Speicherverlust und beendet den WmiPrvse.exe Prozess. Untersuchen Sie die verarbeitete Abfrage und den Stapel des WmiPrvse.exe Prozesses, der das Problem verursacht.
Das Untersuchen der eingehenden Abfragen hilft, das WmiPrvse.exe Prozessverhalten zu verstehen.
Wenn kein Clientanwendungen oder -dienste das Problem verursacht, überprüfen Sie die WmiPrvse.exe Prozessaktivität, die die in der Ereignis-ID 5612 identifizierten Anbieter hosten.
Verwenden Sie den Prozess-Explorer, um die Threads und Stapel zu überprüfen.
Führen Sie den Prozess-Explorer als Administrator aus, und suchen Sie den WmiPrvse.exe Prozess mithilfe der im Abschnitt "Problem diagnostizieren" genannten Technik.
Wechseln Sie zu "Eigenschaften" , und wählen Sie die Registerkarte "Threads " aus.
Für jeden Thread können Sie den Stapel überprüfen und ermitteln, ob Sie Nicht-Microsoft-Binärdateien oder -dateien finden.
Möglicherweise bemerken Sie Binärdateien von Software wie Antivirensoftware, Überwachungssoftware und Bedrohungsschutzsoftware. Obwohl diese Softwareanwendungen die Umgebung nutzen, können sie manchmal unterbrechen und solche Probleme verursachen. Daher können Sie sie vorübergehend deinstallieren und auf das Problem überprüfen.
Wenn beim Entfernen des identifizierten Nicht-Microsoft-Produkts das Problem behoben werden kann, können Sie dieses Verhalten des Produkts mit dem Produktanbieter beheben.
Andernfalls müssen Sie sich an Microsoft-Supportmitarbeiter wenden, um die ETL-Ablaufverfolgung (Event Trace Log) zu analysieren und das Abbild von WMI-Anbietern zu überprüfen.
Datensammlung
Bevor Sie einen Supportfall öffnen, um das Problem weiter zu untersuchen, können Sie die Informationen sammeln, indem Sie die unter " Sammeln von Informationen" genannten Schritte ausführen, indem Sie TSS für Probleme mit der Benutzererfahrung verwenden.
Laden Sie TSS.zip herunter, und extrahieren Sie den Inhalt.
Starten Sie die Ablaufverfolgung, indem Sie das folgende Cmdlet über eine PowerShell-Eingabeaufforderung mit erhöhten Rechten ausführen.
.\TSS.ps1 -UEX_WMIAdvanced -noBasicLog
Lassen Sie die Ablaufverfolgung aktiviert, bis der Fehler oder die gerade ID, die Sie bemerkt haben, reproduziert wurde, oder das identifizierte WmiPrvSE.exe Problem angezeigt wird. Führen Sie die Ablaufverfolgung für mehr als zwei bis drei Minuten aus.
Beenden Sie die Ablaufverfolgung, indem Sie den Anweisungen in der PowerShell-Eingabeaufforderung entsprechend dem TSS-Toolset folgen.
Das Skript erstellt eine ZIP-Datei mit allen Ablaufverfolgungsergebnissen und Diagnoseinformationen. Nachdem ein Supportfall erstellt wurde, kann diese Datei zur Analyse in den sicheren Arbeitsbereich hochgeladen werden.