Inleiding tot de toolset TroubleShootingScript (TSS)
In dit artikel maakt u kennis met de TSS-toolset (TroubleShootingScript) en vindt u antwoorden op veelgestelde vragen.
Van toepassing op: ondersteunde versies van Windows Server en Windows Client
De TSS-toolset bevat op PowerShell gebaseerde hulpprogramma's en een framework voor het verzamelen van gegevens en diagnostische gegevens. De toolset is bedoeld om het verzamelen van gegevens te vereenvoudigen en zaken efficiënt en veilig op te lossen.
De toolset bevat verschillende PowerShell-scripts en uitvoerbare bestanden, die allemaal zijn ondertekend door Microsoft. Op basis van de geselecteerde schakelopties gebruikt TSS een of meer scripts en uitvoerbare bestanden om de gewenste logboeken te verzamelen.
U kunt de toolset downloaden als een zip-bestand (TSS.zip).https://aka.ms/getTSS
Voorwaarden
Hier volgen enkele vereisten voor het uitvoeren van de toolset:
De TSS-toolset moet worden uitgevoerd in een PowerShell-venster met verhoogde bevoegdheden voor accounts met beheerdersbevoegdheden op het lokale systeem. Het uitvoeren van de TSS-toolset in de Windows PowerShell Integrated Scripting Environment (ISE) wordt niet ondersteund. De gebruiksrechtovereenkomst (EULA) moet worden geaccepteerd. Zodra de gebruiksrechtovereenkomst is geaccepteerd, wordt de TSS-toolset niet opnieuw om de gebruiksrechtovereenkomst gevraagd.
Het uitvoeringsbeleid voor PowerShell-scripts moet op procesniveau worden ingesteld
RemoteSigned
door de cmdletSet-ExecutionPolicy -scope Process -ExecutionPolicy RemoteSigned -Force
uit te voeren vanaf een PowerShell-opdrachtprompt met verhoogde bevoegdheid.Notitie
Wijzigingen op procesniveau zijn alleen van invloed op de huidige PowerShell-sessie.
De TSS-toolset starten
U kunt TSS.ps1 met verschillende switches starten, afhankelijk van het scenario. Het -Start
werkwoord is de standaard- en optionele werkwoord en kan indien nodig worden vervangen door een aanvullend werkwoord. De complementaire -Start
werkwoorden zijn -StartAutoLogger
, -StartDiag
, -StartNoWait
en -CollectLog
.
Term | Beschrijving |
---|---|
-Start |
Met het -Start werkwoord worden traceringen van ETW-onderdelen (Event Tracing for Windows) gestart of worden hulpprogramma's zoals Windows Performance Recorder (WPR) gestart.Het [-Start] werkwoord is optioneel, maar kan worden vervangen door aanvullende -start opties. |
-StartAutoLogger |
Als u deze logboeken tijdens het opstarten wilt verzamelen, gebruikt -StartAutoLogger u deze om te vervangen -Start .Gebruik deze in combinatie met de .\TSS.ps1 -Stop cmdlet om de traceringen te stoppen zodra het probleem is gereproduceerd. |
-StartDiag |
Hoewel deze switch momenteel niet veel gebruikt, is het bedoeld om in de toekomst in meerdere scenario's te worden gebruikt. Vanaf vandaag kan deze worden gecombineerd met andere argumenten, zoals NET_DFSn het ophalen van diagnostische gegevens van de DFSN-naamruimte. |
-StartNoWait |
Met deze parameter kunnen de traceringen actief blijven, zelfs wanneer u zich afmeldt. Gebruik deze in combinatie met de .\TSS.ps1 -Stop cmdlet om de traceringen te stoppen zodra het probleem is gereproduceerd. |
-CollectLog |
Deze parameter wordt vaak samen met het argument DND_SetupReport gebruikt.Voorbeeld: .\TSS.ps1 -Collectlog DND_SetupReport |
Logboeken met betrekking tot de traceringen worden ook automatisch verzameld wanneer u het verzamelen van gegevens stopt.
Syntaxis voor het gebruik van TSS-toolset
Parameter | Description |
---|---|
<placeholder> |
De tekenreeks tussen punthaken (<>) voor tijdelijke aanduidingen moet worden vervangen door een werkelijke scenarionaam, traceringsonderdeel, opdracht of waarde. |
[optional] |
Het trefwoord of de waarde tussen vierkante haken ([ ]) is optioneel. Betekent bijvoorbeeld dat [module:int] de module en het interval optioneel zijn. De standaardwaarde wordt gebruikt als [<xx>:<yy>] u deze weglaat. |
| | Deze parameter betekent 'OR' . U kunt een van de beschikbare opties kiezen. |
: |
Het scheidingsteken tussen twee waarden. |
Voorbeelden van cmdlets
PowerShell-cmdlet | Beschrijving |
---|---|
.\TSS.ps1 -PerfMon [General:10] |
Deze parameter betekent PerfMon CounterSetName = General en Interval = 10 seconden. Wanneer [General:10] dit wordt weggelaten, wordt de standaardinstelling geactiveerd, dus -PerfMon heeft hetzelfde effect als -PerfMon General -PerfIntervalSec 10 . |
.\TSS.ps1 [-StopWaitTimeInSec <N>] |
Deze parameter betekent dat het argument -StopWaitTimeInSec optioneel is, maar als dit is opgegeven, is een waarde voor <N> ="het aantal seconden" verplicht. |
Tracering van gebeurtenissen voor Windows (ETW)
ETW-tracering | PowerShell-cmdlet | Beschrijving |
---|---|---|
Schakel een scenariotracering in. | .\TSS.ps1 -Scenario <ScenarioName> |
De ondersteunde scenarionamen worden vermeld met behulp van de TSS.ps1 -ListSupportedScenarioTrace cmdlet. |
Schakel onderdeeltraceringen in. | .\TSS.ps1 <-ComponentName> <-ComponentName> ... |
De ondersteunde <-componentName> wordt vermeld met behulp van de TSS.ps1 -ListSupportedTrace cmdlet. |
Start traceringen met de modus Zonder wachten. | .\TSS.ps1 -StartNoWait -Scenario <ScenarioName> .\TSS.ps1 -Stop |
De prompt wordt onmiddellijk geretourneerd, zodat u zich kunt afmelden of een cmdlet zoals Shutdown .De cmdlet .\TSS.ps1 -Stop stopt de tracering. |
Notitie
Gebruik de -ListETWProviders
cmdlet om alle provider-GUID's van onderdelen en/of scenario's weer te geven. Bijvoorbeeld:
.\TSS.ps1 -ListETWProviders <component-/scenario-name>
Ondersteuningshulpprogramma's en opdrachten
Start ondersteuningshulpprogramma's of opdrachten (bijvoorbeeld ProcMon, ProcDump, netsh, Performance Monitor (PerfMon), WPR of Radar) om logboekverzameling te verbeteren met extra hulpprogramma's voor gespecialiseerde opnamen.
PowerShell-cmdlet | Beschrijving |
---|---|
-Fiddler |
Fiddler-tracering verzamelen. Hiervoor moet Fiddler zijn geïnstalleerd. Schakel de optie voor het ontsleutelen van verkeer in door Extra>opties te selecteren en HTTPS-verkeer ontsleutelen te selecteren op het tabblad HTTPS. |
-GPresult <Start |Stop |Both > |
Uitvoer verzamelen GPresult op fase start , stop of both . |
-Handle <Start |Stop |Both > |
SysInternals Handle.exe uitvoer verzamelen op fase start , stop of both . |
-LiveKD <Start |Stop |Both > |
Start SysInternals LiveKD -ml (live kerneldump).<Start> : de dump wordt genomen aan het begin van de repro.<Stop> : de dump wordt bij stop genomen.<Both> : de dump wordt zowel bij het begin als bij de stop genomen. |
-Netsh 1. -NetshOptions '<Option string>' 2. -NetshMaxSizeMB <Int> 3. -noPacket |
Start het vastleggen van netwerkpakketten. 1. Geef extra opties op voor Netsh . Bijvoorbeeld 'capturetype=both captureMultilayer=yes provider=Microsoft-Windows-PrimaryNetworkIcon provider={<GUID>}' .2. De maximale logboekgrootte voor Netsh in megabytes (MB) (bijvoorbeeld -NetshMaxSizeMB 4096 ). De standaardwaarde is 2048.3. Voorkomen dat pakketten worden vastgelegd met Netsh (alleen ETW-traceringen in de ScenarioName worden vastgelegd). |
-NetshScenario 1. -NetshOptions '<Option string>' 2. -NetshMaxSizeMB <Int> 3. -noPacket |
Start de Netsh scenariotracering. De ondersteunde <ScenarioName> wordt vermeld met behulp van de -ListSupportedNetshScenario cmdlet.1. Geef extra opties op voor Netsh . Bijvoorbeeld 'capturetype=both captureMultilayer=yes provider=Microsoft-Windows-PrimaryNetworkIcon provider={<GUID>}' .2. De maximale logboekgrootte voor Netsh in MB (bijvoorbeeld -NetshMaxSizeMB 4096 ). De standaardwaarde is 2048.3. Voorkomen dat pakketten worden vastgelegd met Netsh (alleen ETW-traceringen in de scenarionaam worden vastgelegd). |
-PerfMon <CounterSetName> [-PerfIntervalSec N] [-PerfMonMaxMB <N>] [-PerfMonCNF <[[hh:]mm:]ss>] 1. -PerfIntervalSec <Interval in sec> 2. -PerfMonMaxMB <N> 3. -PerfMonCNF <[[hh:]mm:]ss> |
Start prestatiemeterlogboeken. De <CounterSetName> lijst kan worden weergegeven met behulp van de -ListSupportedPerfCounter cmdlet.1. Stel het interval voor het PerfMon logboek in (de standaardwaarde is 10 seconden).2. Geef een int-waarde op voor de maximale Perfmon logboekgrootte in MB (de standaardwaarde is 2048).3. Maak een nieuw bestand wanneer de opgegeven tijd is verstreken of wanneer de maximale grootte is <PerfMonMaxMB> overschreden. |
-PerfMonLong <CounterSetName> [-PerfLongIntervalMin N] [-PerfMonMaxMB <N>] [-PerfMonCNF <[[hh:]mm:]ss>] 1. -PerfLongIntervalMin <Interval in min> |
Prestatiemeter met een lang interval. 1. Stel het interval voor het PerfMonLong logboek in (de standaardwaarde is 10 minuten). |
-PktMon |
Gegevens voor pakketbewaking verzamelen (op Windows Server 2019, Windows 10, versie 1809 en latere versies). PktMon:Drop verzamelt alleen verwijderde pakketten. |
-PoolMon <Start |Stop |Both > |
Verzamelen PoolMon op start , stop of both . |
-ProcDump <PID[] |ProcessName.exe[] |ServiceName[] >1. -ProcDumpOption <Start |Stop |Both >-ProcDumpInterval <N>:<Interval in sec> 2. -ProcDumpInterval <N>:<Interval in sec> 3. -ProcDumpAppCrash |
Leg gebruikersdumps vast van één item of door komma's gescheiden lijst met items met sysInternals ProcDump.exe. Standaard wordt de dump genomen aan het begin van de repro en stop. Voer ProcessName (s) in met de .exe extensie.1. Start : de dump wordt genomen aan het begin van de repro.Stop : de dump wordt bij stop genomen.Both (standaard): de dump wordt genomen bij zowel starten als stoppen.2. Gebruik deze optie wanneer de dump herhaaldelijk moet worden vastgelegd. N : het aantal dumpsInt : het interval in secondenDe standaardwaarde is 3:10. 3. Met deze schakeloptie wordt ProcDump -ma -e een volledige dump geschreven wanneer het proces een onverwerkte uitzondering tegenkomt. |
-ProcMon 1. -ProcmonAltitude <N> 2. -ProcmonPath <folder path to Procmon.exe> 3. -ProcmonFilter <filter-file.pmc> |
Start SysInternals Procmon.exe. 1. Geef een tekenreekswaarde op voor ProcmonAltitude (de standaardwaarde is 385200). Gebruik fltmc instances dit diagram om hoogte van filterstuurprogramma's weer te geven. Gebruik een lager nummer dan het vermoedelijke specifieke stuurprogramma. Waarde 45100 toont u vrijwel alles.2. Geef een pad op naar Procmon.exe (standaard maakt TSS gebruik van de ingebouwde Procmon). 3. Geef een configuratiebestand op voor Procmon (bijvoorbeeld ProcmonConfiguration.pmc) in de map \config . |
-PSR |
Start problemen stappen recorder. |
-Radar <PID[] |ProcessName[] |ServiceName[] > |
Verzamel de diagnostische gegevens van het lek (rdrleakdiag.exe). Bijvoorbeeld -Radar AppIDSvc . |
-RASdiag |
Tracering verzamelen. De Netsh ras diagnostische set trace is ingeschakeld. |
-SDP <SpecialityName[]> 1. -SkipSDPList "<xxx>","<yyy>" 2. <SpecialityName> |
Verzamel SDP (Support Diagnostic Package) voor de opgegeven specialiteit. Voor de volledige lijst met SpecialityNames en SkipSDPList gebruikt u de .\tss -help cmdlet.Sla de door komma's gescheiden lijst met SDP-modulenamen over die in uw omgeving hangen tijdens het uitvoeren van het SDP-rapport. |
-SysMon |
SysInternals System Monitor-logboeken (SysMon) verzamelen (standaard sysmonConfig.xml in de configuratiemap). |
-TTD <PID[] |ProcessName.exe[] |ServiceName[] >1. -TTDPath <Folder path to tttracer.exe> 2. -TTDMode <Full |Ring |onLaunch >3. -TTDMaxFile <size in MB> 4. -TTDOptions '<String of TTD options>' |
TTD (Start Time Travel Debugging) (TTT/iDNA) met de standaardmodus -Full . Voer de ProcessName (s) in met de .exe extensie, één item (PID/naam) of een door komma's gescheiden lijst met items.Notitie: Besturingssysteem op lager niveau voor Windows 10 versie 1703 vereist het TSS_TTD.zip-pakket . 1. Geef het mappad op met tttracer.exe (PartnerTTD). Deze schakeloptie is doorgaans alleen nodig als u een specifiek pad wilt afdwingen. 2. Full = -dumpfull (=standaard)Ring = ringbuffermodusonLaunch = -onLaunch (vereist TSS_TTD)3. De maximale grootte van het logboekbestand. De bewerking is afhankelijk -TTDMode van . Full stopt wanneer de maximale grootte is bereikt en Ring behoudt de maximale grootte in de ringbuffer.4. Gebruik deze optie om extra opties toe te voegen voor TTD (TTT/iDNA). |
-Video |
Video vastleggen starten (vereist dat .NET 3.5 is geïnstalleerd). |
-WFPdiag |
Verzamel traceringen met de netsh Wfp capture opdracht. |
-WireShark |
Start WireShark. De volgende parameters kunnen worden geconfigureerd via het bestand tss_config.cfg . 1. WS_IF : gebruikt voor -i . Geef het interfacenummer op (bijvoorbeeld _WS_IF=1 ).2. WS_Filter : gebruikt voor -f . Filter op de interface (bijvoorbeeld _WS_Filter="port 443" ).3. WS_Snaplen : gebruikt voor -s . Beperk de hoeveelheid gegevens voor elk frame. Deze parameter heeft betere prestaties en is handig voor situaties met hoge belasting (bijvoorbeeld _WS_Snaplen=128 ).4. WS_TraceBufferSizeInMB : gebruikt voor -b FileSize (vermenigvuldigd met 1024). Schakel over naar het volgende bestand na het aantal megabytes. (bijvoorbeeld, _WS_TraceBufferSizeInMB=512 default=512 MB)5. WS_PurgeNrFilesToKeep : gebruikt voor -b files . Vervang na het aantal bestanden. (bijvoorbeeld, _WS_PurgeNrFilesToKeep=20 )6. WS_Options : andere opties voor -i (bijvoorbeeld _WS_Options="-P" ).Voorbeeld: Als u WireShark wilt verzamelen op interfaces 15 en 11, voert u in wanneer TSS om een interfacenummer vraagt: 15 -i 11 .Wireshark wordt standaard gestart dumpcap.exe -i <all NICs> -B 1024 -n -t -w _WireShark-packetcapture.pcap -b files:10 -b filesize:524288 . |
-WPR <WPRprofile> 1. -SkipPdbGen 2. -WPROptions '<Option string>' |
Start een WPR-profieltracering. <WPRprofile> is een van General VSOD_Leak |CPU VSOD_CPU |||Device SQL ||Xaml Wait ||Graphic |Storage |Registry Network Memory ||BootGeneral |.1. Het genereren van symboolbestanden (PDB-bestanden) overslaan. 2. Geef opties op voor WPR.exe. Bijvoorbeeld -WPROptions '-onoffproblemdescription "test description"' .Voorbeeld 1: .\TSS.ps1 -StartAutoLogger -WPR BootGeneral -WPROptions '-addboot CPU' legt WPR-opstarttraceringen vast met de General en CPU profielen.Voorbeeld 2: .\TSS.ps1 -WPR General -WPROptions '-Start CPU -start Network -start Minifilter' combineert profielen (General , CPU , Network , en Minifilter ). |
-Xperf <Profile> 1. -XperfMaxFileMB <Size> 2. -XperfTag <Pool Tag> 3. -XperfPIDs <PID> 4. -XperfOptions <Option string> |
Start Xperf. <Profile> is een van General SBSLboot ||Disk Registry ||SBSL PoolNPP ||SMB2 |Pool |Network Memory Leak ||CPU |.1. Geef de maximale logboekgrootte op in MB (de standaardwaarde is 2048 MB). De standaardwaarde voor SBSL*-scenario's is 16384 (hetzelfde voor ADS_/NET_SBSL). 2. Geef PoolTag op dat moet worden geregistreerd. Deze parameter wordt gebruikt met het Pool of PoolNPP profiel (bijvoorbeeld -Xperf Pool -XperfTag TcpE+AleE+AfdE+AfdX ).3. Geef ProcessID op. Deze parameter wordt gebruikt met het Leak profiel (bijvoorbeeld -Xperf Leak -XperfPIDs <PID> ).4. Geef andere optietekenreeksen op voor Xperf . |
-xray |
Start xray om een systeem te diagnosticeren op bekende problemen. |
In het volgende voorbeeld ziet u hoe u meerdere ondersteuningshulpprogramma's (opdrachten) activeert tijdens dezelfde tracering.
.\TSS.ps1 -WPR <WPRprofile> -Procmon -Netsh|-NetshScenario <NetshScenario> -PerfMon <CounterSetName> -ProcDump <PID> -PktMon -SysMon -SDP <specialty> -xray -PSR -Video -TTD <PID[]|ProcessName[]|ServiceName[]>
Parameters binnen TSS-opties
Definieert specifieke parameters binnen de TSS-opties voor het beheren, verbeteren of vereenvoudigen van gegevensverzameling.
Parameter | Description |
---|---|
-AcceptEula |
Vraag het eerst niet. uitvoeren om de vrijwaring te accepteren (handig voor de -RemoteRun uitvoering). |
-AddDescription <description> |
Voeg een korte beschrijving van het probleem met repro toe. De naam van het resulterende ZIP-bestand bevat een dergelijke beschrijving. |
-Assist |
Toegankelijkheidsmodus. |
-BasicLog |
Verzamel het volledige basislogboek (het mini-basislogboek wordt altijd standaard verzameld). |
-CollectComponentLog |
Gebruiken met -Scenario . Onderdelen verzamelen worden standaard niet aangeroepen in de -Scenario tracering. Met deze schakeloptie kan de functie voor het verzamelen van onderdelen worden aangeroepen. |
-CollectDump |
Verzamel systeemdump (memory.dmp) nadat alle traceringen zijn gestopt. -CollectDump kan worden gebruikt met -Start en -Stop . |
-CollectEventLog <Eventlog[]> |
Verzamel opgegeven gebeurtenislogboeken. Het sterretje (*) jokerteken kan worden gebruikt voor de naam van het gebeurtenislogboek. Voorbeeld: -CollectEventLog Security,*Cred* Verzamel beveiliging en alle gebeurtenislogboeken die overeenkomen *Cred* met dergelijke 'Microsoft-Windows-CertificateServicesClient-CredentialRoaming/Operational' . |
-CommonTask <<POD> |Full |Mini > |
Voer algemene taken uit voordat u begint en na het stoppen van de tracering.<POD> : momenteel is alleen 'NET' beschikbaar. Verzamel aanvullende informatie voordat u begint en na het stoppen van de tracering.Full : het volledige basislogboek wordt verzameld na het stoppen van de tracering.Mini : het mini-basislogboek wordt verzameld na het stoppen van de tracering. |
-Crash |
Trigger een systeemcrash met NotMyFault bij de stop van repro, of nadat alle gebeurtenissen worden gesignaleerd indien gebruikt met -WaitEvent .Let op: Met deze switch wordt een geheugendump afgedwongen (het systeem wordt opnieuw opgestart), zodat geopende bestanden niet worden opgeslagen. |
-CustomETL |
Aangepaste ETL-traceringsproviders toevoegen. Bijvoorbeeld .\TSS.ps1 -WIN_CustomETL -CustomETL '{<GUID>}','Microsoft-Windows-PrimaryNetworkIcon' ( een door komma's gescheiden lijst met enkel aanhalingstekens '{GUID}' en/of 'Provider-Name' ). |
-DebugMode |
Uitvoeren met de foutopsporingsmodus voor een ontwikkelaar. |
-VerboseMode |
Uitgebreidere of informatieve uitvoer weergeven tijdens het verwerken van TSS-functies. |
-Discard |
Wordt gebruikt om een gegevensset in fase -Stop te verwijderen. *Stop- of *Collect- functies worden niet uitgevoerd. xray en psSDP wordt overgeslagen. |
-EnableCOMDebug |
Module voor het inschakelen van com-foutopsporingsmodus. |
-ETLOptions <circular |newfile >:<ETLMaxSizeMB >:<ETLNumberToKeep >:<ETLFileMax > |
Stel opties in die worden doorgegeven aan logman opdrachten. De standaardwaarde is circular ETLMaxSizeMB 1024 en de standaardwaarde newfile ETLMaxSizeMB is 512.-StartAutologger -ETLOptions circular:<ETLMaxSize>:<ETLNumberToKeep>:<ETLFileMax> ondersteunt alleen , maar ETLNumberToKeep wordt naar verwachting niet uitgevoerd.Voorbeeld.1: -ETLOptions newfile:2048:5 Voer newfile logboeken uit met een grootte van 2048 MB. Bewaar alleen de laatste vijf *.etl bestanden. De standaardinstelling voor de kringmodus is circular:1024 , en voor de newfile-modus is newfile:512:10 .Voorbeeld 2: -StartAutologger -ETLOptions circular:4096 Autologger gehoorzaamt :<ETLNumberToKeep> niet en accepteert alleen modus circulair.Voorbeeld 3: -StartAutologger -ETLOptions circular:4096:10:3 Autologger gehoorzaamt :<ETLNumberToKeep> niet en accepteert alleen de modus circulair en "3" als het aantal autologger generaties. |
-ETWlevel <Info |Warning |Error > |
Stel het niveau voor gebeurtenistracering in. De standaardwaarde is 0xFF. |
-EvtDaysBack <N> |
Converteer gebeurtenislogboeken alleen voor de afgelopen N dagen. De standaardwaarde is 30 dagen. Het is ook van toepassing op het SDP-rapport. Opmerking: Logboeken voor beveiligingsgebeurtenissen worden overgeslagen. |
-ExternalScript <path to external PS file> |
Voer het opgegeven PowerShell-script uit voordat u de tracering start. |
-LogFolderPath <Drive:\path to log folder> |
Gebruik een ander pad naar de logboekmap voor de resulterende uitvoergegevens in plaats van de standaardlocatie (C:\MS_DATA). Het is handig wanneer station C: weinig vrije schijfruimte heeft. |
-MaxEvents <N> |
Als argument hiervoor '-WaitEvent Evt:..' onderzoekt de parameter het laatste N-aantal gebeurtenissen met dezelfde gebeurtenis-id (de standaardwaarde is 1). |
-Mini |
Alleen minimale gegevens verzamelen. Overslaan, , , , noXray , en noBasicLog noZip . noVideo noSDP noPSR |
-Mode <Basic |Medium |Advanced |Full |Verbose |VerboseEx |Hang |Restart | Swarm |Kube |GetFarmdata |Permission |traceMS > |
Voer scripts uit in Basic , Medium of Advanced in de Verbose(Ex) Full modus voor het verzamelen van gegevens. Restart start de bijbehorende service opnieuw op. |
-RemoteRun |
Gebruik deze optie wanneer TSS wordt uitgevoerd op een externe host, bijvoorbeeld via PsExec, in de seriële Azure-console of met externe communicatie van PowerShell. Deze parameter remt PSR, video-opname, starten TssClock en openen Explorer met uiteindelijke resultaten. In dat geval moet u ook rekening houden met -AcceptEula . |
-StartNoWait |
Wacht niet en prompt wordt onmiddellijk geretourneerd. Deze parameter is handig voor het scenario waarin een gebruiker zich moet afmelden. |
-WaitEvent |
Controleren op de opgegeven gebeurtenis of stoptrigger; als het wordt gesignaleerd, worden traceringen automatisch gestopt. Er is een groot aantal opties om een automatische stop te activeren. Voer uit .\TSS.ps1 -Find Monitoring om het gebruik te zien. |
-Update 1. -UpdMode <Online |Lite > |
Werk het TSS-pakket bij. Het kan samen met -UpdMode Online|Lite .Online is de standaardinstelling en Lite is de Upd lite-versie. |
-Help 1. Common 2. ALL 3. Monitoring 4. Config 5. Keyword |
Help-berichten geven over verschillende scenario's. 1. Algemene Help-bericht. 2. Alle beschikbare opties. 3. Help-berichten weergeven voor bewaking en externe functies. 4. Help bij alle configuratieparameters. 5. U kunt elk trefwoord invoeren en hierin worden de Help-informatie over dat trefwoord weergegeven. |
-Status |
De status van de actieve tracering weergeven, indien van toepassing. |
Helperscripts en hulpprogramma's inbegrepen
Helperscript en hulpprogramma | Beschrijving |
---|---|
\scripts\tss_EventCreate.ps1 |
Maak een gebeurtenislogboekvermelding in gebeurtenislogboekbestanden met gebeurtenis-id's. |
\scripts\tss_SMB_Fix-SmbBindings.ps1 |
Handig voor het herstellen van beschadigde SMB-bindingen (LanmanServer, LanmanWorkstation of NetBT). Zie ook -Collect NET_SMBsrvBinding . |
\BINx64\kdbgctrl.exe |
Gebruik de switch -sd <dump type> om het type kernelcrashdump Full|Kernel in te stellen, kdbgctrl -sd Full bijvoorbeeld. |
\BINx64\NTttcp.exe |
Prestatietests. Zie Vm-netwerkdoorvoer testen met behulp van NTTTCP voor meer informatie. |
\BINx64\latte.exe |
Latentietests. Zie Netwerklatentie testen tussen Virtuele Azure-machines voor meer informatie. |
\BINx64\notmyfaultc.exe |
Een geheugendump afdwingen. Zie NotMyFault v4.21 als de TSS-opdrachtregel bevat -Crash . |
Onverwachte PowerShell-fouten oplossen
Voer deze cmdlet uit na een fout:
.\TSS.ps1 -Stop -noBasiclog -noXray
Sluit het geopende PowerShell-venster met verhoogde bevoegdheid en start een nieuw PowerShell-venster met verhoogde bevoegdheid.
Toestaan dat PowerShell-scripts op uw systeem worden uitgevoerd met de juiste
ExecutionPolicy
.Als er een fout optreedt die aangeeft dat het actieve script is uitgeschakeld, probeert u de volgende methoden.
Methode 1
Voer de volgende cmdlet uit:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -force -Scope Process
Controleer of de instellingen met de
Get-ExecutionPolicy -List
cmdlet nietExecutionPolicy
met een hogere prioriteit de uitvoering van dit script blokkeren.Voer de
.\TSS.ps1 <Desired Parameters>
cmdlet opnieuw uit.
Methode 2 (alternatief)
Als scripts worden geblokkeerd door MachinePolicy
, voert u de volgende cmdlets uit in een PowerShell-venster met verhoogde bevoegdheid:
Set-ItemProperty -Path HKLM:\Software\Policies\Microsoft\Windows\PowerShell -Name ExecutionPolicy -Value RemoteSigned
Set-ItemProperty -Path HKLM:\Software\Policies\Microsoft\Windows\PowerShell -Name EnableScripts -Value 1 -Type DWord
Methode 3 (alternatief)
Als scripts worden geblokkeerd door UserPolicy
, voert u de volgende cmdlets uit in een PowerShell-venster met verhoogde bevoegdheid:
Set-ItemProperty -Path HKLM:\Software\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell -Name ExecutionPolicy -Value RemoteSigned
Set-ItemProperty -Path HKLM:\Software\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell -Name EnableScripts -Value 1 -Type DWord
Notitie
Methode 2 is slechts een tijdelijke oplossing voor het beleid MachinePolicy - RemoteSigned
. Als u dit ook ziet, vraagt UserPolicy - RemoteSigned
u de domeinbeheerder om een tijdelijke GPO-uitzondering (Group Policy Object).
In zeldzame gevallen kunt u de -ExecutionPolicy Bypass
cmdlet proberen.
Als uw organisatie de beperkte taalmodusSystem.Management.Automation.EngineIntrinsics.SessionState.LanguageMode -ne 'FullLanguage'
voor groepsbeleidsobject powershell dwingt, vraagt u de domeinbeheerder om een tijdelijke GPO-uitzondering.
Veelgestelde vragen (FAQ's)
V1: Wijzigt het TSS-script de installatie of configuratie van mijn systeem?
A1: Nee, maar een registerinstelling is vereist voor het inschakelen van logboekregistratie voor foutopsporing in sommige scenario's. Met het script wordt de benodigde sleutel aan het begin van de gegevensverzameling ingesteld en wordt de sleutel teruggezet naar de standaardwaarde aan het einde van de gegevensverzameling. Het kan ook enkele caches verwijderen (bijvoorbeeld de ARP-cache of de cache voor naamomzetting) aan het begin van de gegevensverzameling om het probleem in de logboeken te observeren.
V2: Wordt de TSS-toolset extra belast op de server?
A2: Sommige logboekregistraties (bijvoorbeeld netwerkopname, ETW-traceringsverzameling, enzovoort) die door de TSS-toolset worden gestart, kunnen een kleine belasting op het systeem hebben. De belasting is meestal op negeerbare niveaus. Neem contact op met uw ondersteuningsmedewerker wanneer u een hoog CPU-, geheugen- of schijfgebruik ziet na het starten van de TSS-toolset.
V3: Waarom kunnen we het probleem niet reproduceren wanneer de TSS-toolset wordt uitgevoerd?
A3: De TSS-toolset kan alle gegevens in de cache aan het begin verwijderen. Het netwerk wordt ook in een promiscuous-modus vastgelegd, waardoor het standaardgedrag van de netwerkinterfacekaart (NIC) wordt gewijzigd. Deze wijzigingen kunnen van invloed zijn op het probleem en de problemen kunnen verdwijnen. Met name voor bepaalde timingproblemen verdwijnen problemen vanwege de gegevensverzameling van de TSS-toolset. De gegevensverzameling begint met logboekregistratie, wat indirect van invloed kan zijn op het probleem en de situatie kan veranderen.
V4: Waarom reageert de TSS-toolset lang niet?
A4: In sommige gevallen reageren de ingebouwde opdrachten van het besturingssysteem die worden uitgevoerd door de TSS-toolset mogelijk niet of duurt het lang om te voltooien. Neem contact op met uw ondersteuningsmedewerker als u dit probleem ondervindt.
V5: Moet ik me zorgen maken over schijfruimte of iets anders wanneer ik de TSS-toolset lange tijd uitvoer?
A5: Alle TSS-tracering is geconfigureerd voor uitvoering met ringbuffers, zodat u de toolset zo nodig lang kunt uitvoeren. De TSS-toolset berekent ook schijfruimte aan het begin van de gegevensverzameling en kan worden afgesloten als er onvoldoende schijfruimte is. Als u een hoog schijfgebruik ziet na het starten van de TSS-toolset of andere zorgen hebt over het schijfgebruik van de toolset, neemt u contact op met uw ondersteuningsmedewerker.
V6: Wat moet ik doen als ik de volgende beveiligingswaarschuwing ontvang bij het uitvoeren van het script .\TSS.ps1 ?
Security Warning: Run only scripts that you trust. While scripts from the Internet can be useful, this script can potentially harm your computer. Do you want to run .\TSS.ps1? [D] Do not run [R] Run once [S] Suspend [?] Help (default is "D")
A6: In zeldzame gevallen ontvangt u mogelijk deze beveiligingswaarschuwing. U kunt het script deblokkeren met behulp van de cmdlet
PS C:\> Unblock-File -Path C:\TSS\TSS.ps1
. Met dit script worden alle andere modules gedeblokkeerd met behulp van de cmdletGet-ChildItem -Recurse -Path C:\TSS\*.ps* | Unblock-File -Confirm:$false
.
Gebruiksrechtovereenkomst (EULA)
Selecteer hieronder om LICENTIEVOORWAARDEN VOOR MICROSOFT-SOFTWARE weer te geven.
Diagnostische scripts en hulpprogramma's van Microsoft
Deze licentievoorwaarden vormen een overeenkomst tussen u en Microsoft Corporation (of een van haar gelieerde ondernemingen). INDIEN U ZICH HOUDT AAN DE VOORWAARDEN VAN DEZE OVEREENKOMST, HEBT U DE ONDERSTAANDE RECHTEN. DOOR DE SOFTWARE TE GEBRUIKEN GAAT U AKKOORD MET DEZE VOORWAARDEN.
INSTALLATIE- EN GEBRUIKSRECHTEN. Afhankelijk van de voorwaarden en beperkingen die in deze licentie zijn uiteengezet, verleent Microsoft Corporation ('Microsoft') u ('Klant' of 'u') een niet-exclusieve, niet-toewijsbare, volledig betaalde licentie voor het gebruik en reproduceer van het script of hulpprogramma dat is geleverd onder deze licentie (de 'Software'), uitsluitend voor interne zakelijke doeleinden van de klant, om Microsoft te helpen bij het oplossen van problemen met een of meer Microsoft-producten, mits een dergelijke licentie voor de Software geen rechten bevat voor andere Microsoft-technologieën (zoals producten of services). Gebruik betekent dat u de Software kopieert, installeert, uitvoert, opent, weergeeft, uitvoert of anderszins gebruikt.
U mag de Software of enig gebruik ervan niet subliceren via distributie, netwerktoegang of anderszins. Microsoft behoudt zich alle overige rechten voor die hieruit niet uitdrukkelijk worden verleend, hetzij door implicatie, estoppel of anderszins. U mag de Software niet reverse-engineeren, decompileren of demonteren of op een andere manier proberen de broncode voor de Software af te leiden, behalve en voor zover vereist door licentievoorwaarden van derden voor het gebruik van bepaalde opensource-onderdelen die kunnen worden opgenomen in de Software, of verwijderen, minimaliseren, blokkeren of wijzigen van kennisgevingen van Microsoft of haar leveranciers in de Software. Noch u noch uw vertegenwoordigers mogen de Software gebruiken die hierna wordt verstrekt: (i) op een wijze die verboden is door wet, regelgeving, overheidsbevel of besluit; ii) om de rechten van anderen te schenden; (iii) om onbevoegde toegang te krijgen tot of verstoren van services, apparaten, gegevens, accounts of netwerken; (iv) om spam of malware te distribueren; (v) op een manier die de IT-systemen van Microsoft kan schaden of het gebruik ervan door iemand anders kan belemmeren; (vi) in elke toepassing of situatie waarin het gebruik van de Software kan leiden tot de dood of ernstige lichamelijke schade van een persoon, of tot fysieke of milieuschade; of (vii) om iemand te helpen, aan te moedigen of in staat te stellen een van de bovenstaande handelingen uit te voeren.
GEGEVENS. De klant is eigenaar van alle rechten op gegevens die het kan delen met Microsoft via de Software. Meer informatie over het verzamelen en gebruiken van gegevens vindt u in de Help-documentatie en de privacyverklaring op https://aka.ms/privacy. Uw gebruik van de Software werkt als uw toestemming voor deze praktijken.
FEEDBACK. Als u feedback geeft over de Software aan Microsoft, verleent u Microsoft, zonder kosten, het recht om uw feedback op elke manier en voor welk doel dan ook te gebruiken, te delen en te commercialiseren. U geeft geen feedback die onderhevig is aan een licentie waarvoor Microsoft de software of documentatie aan derden moet verlenen, met inbegrip van uw feedback in dergelijke software of documentatie.
EXPORTBEPERKINGEN. De klant moet voldoen aan alle nationale en internationale exportwetten en -voorschriften die van toepassing zijn op de Software, waaronder beperkingen op bestemmingen, eindgebruikers en eindgebruik. Ga voor meer informatie over exportbeperkingen naar https://aka.ms/exporting.
VERKLARINGEN EN GARANTIES. De klant zal voldoen aan alle toepasselijke wetten uit hoofde van deze overeenkomst, met inbegrip van de levering en het gebruik van alle gegevens. De klant of een ontwerpnemer die akkoord gaat met deze voorwaarden namens een entiteit vertegenwoordigt en garandeert dat zij (i) de volledige bevoegdheid en bevoegdheid heeft om haar verplichtingen op grond van deze overeenkomst aan te gaan en uit te voeren, (ii) volledige bevoegdheid en bevoegdheid heeft om haar gelieerde ondernemingen of organisatie te binden aan de voorwaarden van deze overeenkomst, en (iii) zal de toestemming van de andere partij beveiligen voordat een broncode wordt verstrekt op een manier die onderwerp zou zijn het intellectuele eigendom van de andere partij aan andere licentievoorwaarden of de andere partij verplicht broncode te distribueren naar een van zijn technologieën.
GEEN GARANTIE. DE SOFTWARE WORDT GELEVERD 'ZOALS ZODANIG', ZONDER ENIGE GARANTIE, UITDRUKKELIJK OF IMPLICIET, MET INBEGRIP VAN MAAR NIET BEPERKT TOT GARANTIES VAN VERKOOPBAARHEID, GESCHIKTHEID VOOR EEN BEPAALD DOEL EN NIET-INBREUKMAKENDHEID. IN GEEN GEVAL IS MICROSOFT OF HAAR LICENTIEGEVERS AANSPRAKELIJK VOOR DIRECTE, INDIRECTE, INCIDENTELE, SPECIALE, EXEMPLARISCHE OF GEVOLGSCHADE (MET INBEGRIP VAN, MAAR NIET BEPERKT TOT, INKOOP VAN VERVANGENDE GOEDEREN OF SERVICES; VERLIES VAN GEBRUIK, GEGEVENS OF WINST; OF BEDRIJFSONDERBREKING) ECHTER VEROORZAAKT EN OP ENIGE THEORIE VAN AANSPRAKELIJKHEID, HETZIJ CONTRACT, STRIKTE AANSPRAKELIJKHEID OF ONRECHTMATIGE DAAD (MET INBEGRIP VAN NALATIGHEID OF ANDERSZINS) DIE VOORTVLOEIT UIT HET GEBRUIK VAN DE SOFTWARE, ZELFS INDIEN GEADVISEERD OVER DE MOGELIJKHEID VAN DERGELIJKE SCHADE.
BEPERKINGEN EN UITSLUITINGEN VAN SCHADEVERGOEDING. ALS U ENIGE BASIS HEBT VOOR HET VERHALEN VAN SCHADE ONDANKS DE VOORGAANDE VRIJWARING VAN GARANTIE, KUNT U VAN MICROSOFT EN HAAR LEVERANCIERS ALLEEN DIRECTE SCHADE TOT AAN DE VS HERSTELLEN. 00. U KUNT GEEN ANDERE SCHADE VERHALEN, WAARONDER GEVOLGSCHADE, WINSTDERVING, SPECIALE, INDIRECTE OF INCIDENTELE SCHADE. Deze beperking geldt voor (i) alles met betrekking tot de Software, services, inhoud (inclusief code) op internetsites van derden of toepassingen van derden; en ii) vorderingen op schending van de overeenkomst, garantie, garantie of voorwaarde; strikte aansprakelijkheid, nalatigheid of andere onrechtmatige daad; of een andere claim; in elk geval voor zover toegestaan door de toepasselijke wetgeving. De beperking geldt zelfs indien Microsoft op de hoogte was of op de hoogte had moeten zijn van de mogelijkheid van dergelijke schade. Bovengenoemde beperking of uitsluiting geldt voor u wellicht niet omdat in uw land of regio de uitsluiting of beperking van incidentele schade, gevolgschade of andere schade niet is toegestaan.
BINDENDE ARBITRAGE EN AFSTANDSVERKLARING VAN KLASSEACTIE. Deze sectie is van toepassing als u in de Verenigde Staten woont (of, als een bedrijf zich in uw hoofdplaats bevindt). Als u en Microsoft een geschil hebben, gaan u en Microsoft 60 dagen akkoord om het informeel op te lossen. Als u en Microsoft dat niet kunnen, gaan u en Microsoft akkoord met het binden van individuele arbitrage voor de American Arbitration Association onder de Federal Arbitration Act (FAA) en niet in de rechtbank voor een rechter of jury. In plaats daarvan beslist een neutrale arbiter. Rechtszaken in de klasse, arbitrages voor de hele klasse, privé-advocaat-algemene acties en andere procedures waarbij iemand in een representatieve hoedanigheid handelt, is niet toegestaan; noch is het combineren van individuele procedures zonder toestemming van alle partijen. De volledige arbitrageovereenkomst bevat meer voorwaarden en staat op https://aka.ms/arb-agreement-4. U en Microsoft gaan akkoord met deze voorwaarden.
WET EN LOCATIE. Als amerikaanse federale jurisdictie bestaat, geven u en Microsoft toestemming voor exclusieve jurisdictie en locatie in de federale rechtbank in King County, Washington voor alle geschillen die in de rechtbank worden gehoord (exclusief arbitrage). Als dat niet het geval is, geven u en Microsoft toestemming voor exclusieve jurisdictie en locatie in het Superior Court of King County, Washington voor alle geschillen die in de rechtbank worden gehoord (exclusief arbitrage).
GEHELE OVEREENKOMST. Deze overeenkomst en eventuele andere voorwaarden die Microsoft verstrekt voor aanvullingen, updates of toepassingen van derden, vormen de volledige overeenkomst voor de software.