Ich wurde von einem Kunden gebeten, die durchschnittlichen Anmeldezeiten für Maschinen und Benutzer zu berechnen. Bisher habe ich festgestellt, dass das Ereignis einige Starts protokolliert, die länger dauern als die Schwellenwerte, die mit den Schlüsseln unter:
HKLM\Software\Microsoft\Windows\CurrentVersion\Diagnostics\Performance\Boot
Die Schlüssel scheinen jedoch gesperrt zu sein, sodass ich sie nicht bearbeiten kann, um die Schwellenwerte zu senken und die Protokollierung bei jedem Start sicherzustellen. Gibt es Methoden zum Ermitteln der Anmeldezeiten für jede Anmeldung, die ausführlich genug sind, um dem angemeldeten Benutzer mitzuteilen, und möglicherweise detailliertere Informationen, muss diese auch leicht genug sein, um bei jeder Anmeldung ausgeführt zu werden, und keine spürbaren Auswirkungen auf den Benutzer haben .
Antworten:
Ich wurde kürzlich gebeten, etwas sehr Ähnliches zu tun, aber Start- und Anmeldezeiten anzugeben und historische Referenzen zu berücksichtigen. Das folgende Powershell-Skript führt also Folgendes aus:
Das Skript soll also über eine geplante Aufgabe oder nach einem bestimmten Zeitplan ausgeführt werden, wenn Sie möglicherweise über SCCM verfügen (nicht während der Anmeldung, um die Anmeldung überhaupt nicht zu ändern). Das Schöne ist, dass Sie den PC-Namen in einen anderen Namen ändern können, um ihn von Ihrem eigenen PC aus auszuführen und die Daten von einem Remotecomputer abzurufen (obwohl der Benutzername als Ihr eigener angezeigt wird), um Fehler zu beheben und die Nummern zu überprüfen.
Ich habe einen weiteren Schritt unternommen und SharePoint verwendet, um eine Liste externer Daten (mit BCS) zu erstellen, damit diese eine schöne Front-End-Benutzeroberfläche haben. Skript unten, ich habe in den meisten kommentierten Zeilen, die ich beim Schreiben verwendet habe, verlassen:
In diesem letzten SQL-Abschnitt gibt es einige auskommentierte Zeilen, die eine andere Methode (sicherheitsbasiert) für die Eingabe in SQL anbieten, ohne dass ein Kennwort im Klartext erforderlich ist.
quelle
Ich bin mir nicht sicher, warum irgendjemand glauben würde, ein Skript würde Ihnen dabei helfen, die Anmeldezeiten zu bestimmen (schließlich können Sie das Skript erst ausführen, wenn sich jemand angemeldet hat, und das Abrufen von Zeiten hilft nicht weiter, da Zeitverschiebungen sicherlich zu Fehlmeldungen führen würden - was auch würde erst nach dem Start der Verarbeitung behoben werden. Das Tool, das Sie verwenden sollten, ist das xperf-Tool aus dem Performance-Toolkit. Sie möchten die Explorerinit-Zeiten für die Gesamtanmeldezeit anzeigen. Ausführliche Erläuterungen zu finden Sie unter Windows On / Off Transition Performance Analysis Was passiert vom Booten bis zum Desktop ? Informationen zum Abrufen von xperf und xbootmgr von den entsprechenden Stellen finden Sie unter Windows-Tools zur Leistungsanalyse .
quelle
/superuser/250267/how-to-diagnose-slow-booting-or-logon-in-windows-7
Dieser Thread zeigt die "Microsoft" -Methode zum Booten von Diag mit Windows Performance Analysis Tools
Sehr gut dokumentiertes Verfahren von Microsoft zum Ein- und Ausschalten der Übergangsleistung, auch bekannt als Ein- oder Ausschalten von Windows: http://msdn.microsoft.com/en-us/windows/hardware/gg463386.aspx
Mit diesen offiziellen Tools können Sie Ihrem Kunden eine maßgebliche Antwort geben. Meiner Meinung nach weit überlegen als der Versuch, Skripte zu verwenden. Kann etwas übertrieben sein, wenn Ihre Bedürfnisse grundlegend sind.
Auch von diesem Thread verpassen Sie nicht Solutos Website, wenn Ihre Bedürfnisse extrem einfach sind :)
quelle
Die folgende Batch-Datei, die als Anmeldeskript ausgeführt wird, zeigt Ihnen, wie lange es von der Authentifizierung bis zur Fertigstellung der Shell dauert.
Ich habe dies nicht getestet und einige Annahmen getroffen.
net user
ist die Zeit, zu der der DC die Authentifizierung durchgeführt hat. Ich glaube, dass dies der Fall ist, kann aber nichts Konkretes finden, um dies zu belegen.%username%
diesem Fall müssen Sie möglicherweise Anführungszeichen setzen .\\server\share
im obigen Beispiel). Sie können es lokal auf einzelnen Computern protokollieren, dies erschwert jedoch die Überprüfung der Ergebnisse.Bearbeiten:
Ich habe das Skript aktualisiert, um die Zeitverschiebung zu behandeln, mit der sich Jim befasst. Die Anmeldestartzeit vom
net use
Befehl wird von der Uhr des authentifizierenden Domänencontrollers übernommen. Dernet time
Befehl benötigt jetzt auch die Zeit vom selben Server.quelle
Profile
Registerkarte des Benutzerkontoeigenschaftsdialogs in ADU & C. Dies läuft definitiv, wenn die Explorer-Shell geladen wird.