Dela via


Introduktion till FelsökningSkript-verktygsuppsättning (TSS)

Den här artikeln beskriver verktygsuppsättningen Felsökningsskript (TSS) och ger svar på vanliga frågor och svar.

Gäller för: Versioner av Windows Server och Windows Client som stöds

TSS-verktygsuppsättningen innehåller PowerShell-baserade verktyg och ett ramverk för datainsamling och diagnostik. Verktygsuppsättningen syftar till att förenkla datainsamlingen och hjälpa till att lösa ärenden på ett effektivt och säkert sätt.

Verktygsuppsättningen innehåller flera PowerShell-skript och körbara filer, som alla är signerade av Microsoft. Baserat på de valda växlarna använder TSS ett eller flera skript och körbara filer för att samla in önskade loggar.

Du kan ladda ned verktygsuppsättningen som en zip-fil (TSS.zip) från https://aka.ms/getTSS.

Förutsättningar

Här följer några förutsättningar för att verktygsuppsättningen ska köras korrekt:

  • TSS-verktygsuppsättningen måste köras i ett upphöjt PowerShell-fönster av konton med administratörsbehörighet i det lokala systemet. Det går inte att köra TSS-verktygsuppsättningen i Windows PowerShell Integrated Scripting Environment (ISE). Licensavtalet för slutanvändare (EULA) måste godkännas. När licensavtalet har godkänts uppmanar inte TSS-verktygsuppsättningen till licensavtalet igen.

  • PowerShell-skriptkörningsprincipen ska anges till på processnivå genom att RemoteSigned köra cmdleten Set-ExecutionPolicy -scope Process -ExecutionPolicy RemoteSigned -Force från en upphöjd PowerShell-kommandotolk.

    Obs!

    Ändringar på processnivå påverkar bara den aktuella PowerShell-sessionen.

Så här startar du TSS-verktygsuppsättningen

Du kan börja TSS.ps1 med olika växlar beroende på scenariot. Verbet -Start är standardverb och valfritt verb och kan ersättas med ett kompletterande verb efter behov. De kompletterande -Start verben är -StartAutoLogger, -StartDiag, -StartNoWaitoch -CollectLog.

Verb Beskrivning
-Start Verbet -Start startar händelsespårning för Windows-komponentspårning (ETW) eller stödverktyg som Windows Performance Recorder (WPR).

Verbet [-Start] är valfritt men kan ersättas med kompletterande -start alternativ.
-StartAutoLogger Om du vill samla in loggarna vid starttiden använder du -StartAutoLogger för att ersätta -Start.

Använd den i kombination med cmdleten .\TSS.ps1 -Stop för att stoppa spårningarna när problemet har återskapats.
-StartDiag Även om den här växeln inte har mycket användning i nuet, är den avsedd att användas i framtiden i flera scenarier. Från och med idag kan den kombineras med andra argument som NET_DFSn att hämta diagnostik för DFSN-namnområdet.
-StartNoWait Med den här parametern kan spårningarna förbli aktiva även när du loggar ut.

Använd den i kombination med cmdleten .\TSS.ps1 -Stop för att stoppa spårningarna när problemet har återskapats.
-CollectLog Den här parametern används ofta tillsammans med argumentet DND_SetupReport.

Exempel:
.\TSS.ps1 -Collectlog DND_SetupReport

Loggar relaterade till spårningarna samlas också in automatiskt när du stoppar datainsamlingen.

Syntax för att använda TSS-verktygsuppsättning

Parameter Beskrivning
<placeholder> Strängen inom vinkelparenteser (<>) för platshållare måste ersättas med ett faktiskt scenarionamn, spårningskomponent, kommando eller värde.
[optional] Nyckelordet eller värdet inom hakparenteser ([ ]) är valfritt. Innebär till exempel [module:int] att modulen och intervallet är valfria. Standardvärdet används om [<xx>:<yy>] det utelämnas.
| Den här parametern innebär 'OR'. Du kan välja ett av de tillgängliga alternativen.
: Avgränsartecknet mellan två värden.

Cmdlet-exempel

PowerShell-cmdlet Beskrivning
.\TSS.ps1 -PerfMon [General:10] Den här parametern innebär PerfMon CounterSetName= General och Interval= 10 sekunder. När [General:10] utelämnas startar standardinställningen, så -PerfMon har samma effekt som -PerfMon General -PerfIntervalSec 10.
.\TSS.ps1 [-StopWaitTimeInSec <N>] Den här parametern innebär att argumentet -StopWaitTimeInSec är valfritt, men om det anges är ett värde för <N> ="antalet sekunder" obligatoriskt.

Spårning av händelser för Windows (ETW)

ETW-spårning PowerShell-cmdlet Beskrivning
Aktivera en scenariospårning. .\TSS.ps1 -Scenario <ScenarioName> De scenarionamn som stöds visas med hjälp av cmdleten TSS.ps1 -ListSupportedScenarioTrace .
Aktivera komponentspårningar. .\TSS.ps1 <-ComponentName> <-ComponentName> ... Den som stöds <-componentName> visas med hjälp av cmdleten TSS.ps1 -ListSupportedTrace .
Starta spårningar utan vänteläge. .\TSS.ps1 -StartNoWait -Scenario <ScenarioName>

.\TSS.ps1 -Stop
Prompten returnerar omedelbart, så att du kan logga ut eller använda en cmdlet som Shutdown.

Cmdleten .\TSS.ps1 -Stop stoppar spårningen.

Obs!

Om du vill visa en lista över alla provider-GUID:erna för komponenter och/eller scenarier använder du cmdleten -ListETWProviders . Till exempel:

.\TSS.ps1 -ListETWProviders <component-/scenario-name>

Supportverktyg och kommandon

Starta supportverktyg eller kommandon (till exempel ProcMon, ProcDump, netsh, Performance Monitor (PerfMon), WPR eller Radar) för att förbättra logginsamlingen med ytterligare verktyg för specialiserade avbildningar.

PowerShell-cmdlet Beskrivning
-Fiddler Samla in Fiddler-spårning. Det kräver att Fiddler installeras.

Aktivera alternativet för trafikdekryptering genom att välja Verktygsalternativ> och välja Dekryptera HTTPS-trafik på fliken HTTPS.
-GPresult <Start|Stop|Both> Samla in SysInternals -Handle.exe utdata i fas start, stopeller both.
-Handle <Start|Stop|Both> Samla in SysInternals -Handle.exe utdata i fas start, stopeller both.
-LiveKD <Start|Stop|Both> Starta SysInternals LiveKD -ml (live kernel dump).
<Start>: dumpen tas i början av repro.
<Stop>: dumpen tas vid stopp.
<Both>: dumpen tas vid både start och stopp.
-Netsh
1. -NetshOptions '<Option string>'
2. -NetshMaxSizeMB <Int>
3. -noPacket
Starta insamling av nätverkspaket.

1. Ange ytterligare alternativ för Netsh. Till exempel 'capturetype=both captureMultilayer=yes provider=Microsoft-Windows-PrimaryNetworkIcon provider={<GUID>}'.
2. Den maximala loggstorleken för Netsh i MEGABYTE (MB) (till exempel -NetshMaxSizeMB 4096). Standardvärdet är 2048.
3. Förhindra att paket fångas med Netsh (endast ETW-spårningar i ScenarioName kommer att fångas).
-NetshScenario
1. -NetshOptions '<Option string>'
2. -NetshMaxSizeMB <Int>
3. -noPacket
Starta scenariospårningen Netsh . Den som stöds <ScenarioName> visas med hjälp av cmdleten -ListSupportedNetshScenario .

1. Ange ytterligare alternativ för Netsh. Till exempel 'capturetype=both captureMultilayer=yes provider=Microsoft-Windows-PrimaryNetworkIcon provider={<GUID>}'.
2. Den maximala loggstorleken för Netsh i MB (till exempel -NetshMaxSizeMB 4096). Standardvärdet är 2048.
3. Förhindra att paket fångas med Netsh (endast ETW-spårningar i scenarionamnet registreras).
-PerfMon <CounterSetName> [-PerfIntervalSec N] [-PerfMonMaxMB <N>] [-PerfMonCNF <[[hh:]mm:]ss>]
1. -PerfIntervalSec <Interval in sec>
2. -PerfMonMaxMB <N>
3. -PerfMonCNF <[[hh:]mm:]ss>
Starta loggar för prestandaövervakning. <CounterSetName> Kan listas med hjälp av cmdleten -ListSupportedPerfCounter .

1. Ange intervallet för loggen PerfMon (standardvärdet är 10 sekunder).
2. Ange ett int-värde för den maximala Perfmon loggstorleken i MB (standardvärdet är 2048).
3. Skapa en ny fil när den angivna tiden har förflutit eller när maxstorleken <PerfMonMaxMB> för överskrids.
-PerfMonLong <CounterSetName> [-PerfLongIntervalMin N] [-PerfMonMaxMB <N>] [-PerfMonCNF <[[hh:]mm:]ss>]
1. -PerfLongIntervalMin <Interval in min>
Prestandaövervakare med ett långt intervall.

1. Ange intervallet för loggen PerfMonLong (standardvärdet är 10 minuter).
-PktMon Samla in övervakningsdata för paket (på Windows Server 2019, Windows 10 version 1809 och senare versioner). PktMon:Drop samlar endast in borttagna paket.
-PoolMon <Start|Stop|Both> Samla in PoolMonstart, stopeller both.
-ProcDump <PID[]|ProcessName.exe[]|ServiceName[]>
1. -ProcDumpOption<Start|Stop|Both>-ProcDumpInterval <N>:<Interval in sec>
2. -ProcDumpInterval <N>:<Interval in sec>
3. -ProcDumpAppCrash
Samla in användardumpar av ett enskilt objekt eller kommaavgränsad lista över objekt med hjälp av SysInternals ProcDump.exe. Som standard tas dumpen i början av återskapande och stopp. Ange ProcessName(s) med .exe tillägget.

1. Start: dumpen tas i början av repro.
Stop: dumpen tas vid stopp.
Both (standard): dumpen tas vid både start och stopp.
2. Använd det här alternativet när dumpen måste avbildas upprepade gånger.
N: antalet dumpar
Int: intervallet i sekunder
Standardvärdet är 3:10.
3. Den här växeln aktiverar ProcDump -ma -e, som skriver en fullständig dump när processen stöter på ett ohanterat undantag.
-ProcMon
1. -ProcmonAltitude <N>
2. -ProcmonPath <folder path to Procmon.exe>
3. -ProcmonFilter <filter-file.pmc>
Starta SysInternals Procmon.exe.

1. Ange ett strängvärde för ProcmonAltitude (standardvärdet är 385200). Använd fltmc instances för att visa höjd för filterdrivrutiner. Använd ett lägre tal än den misstänkta specifika drivrutinen. Värdet 45100 visar praktiskt taget allt.
2. Ange en sökväg till Procmon.exe (som standard använder TSS den inbyggda Procmon).
3. Ange en konfigurationsfil för Procmon (till exempel ProcmonConfiguration.pmc) i mappen \config .
-PSR Inspelaren Starta problemsteg.
-Radar <PID[]|ProcessName[]|ServiceName[]> Samla in information om läckagediagnostik (rdrleakdiag.exe).

Till exempel -Radar AppIDSvc.
-RASdiag Samla in spårning. Ras-diagnostikuppsättningsspårningen Netsh är aktiverad.
-SDP <SpecialityName[]>
1. -SkipSDPList "<xxx>","<yyy>"
2. <SpecialityName>
Samla in supportdiagnostikpaket (SDP) för den angivna specialiteten. Om du vill ha en fullständig lista över SpecialityNames och SkipSDPListanvänder du cmdleten .\tss -help .

Hoppa över den kommaavgränsade listan över SDP-modulnamn som hänger sig i din miljö när du kör SDP-rapporten.
-SysMon Samla in SysInternals System Monitor-loggar (SysMon) (sysmonConfig.xml i mappen config som standard).
-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>'
Felsökning av starttidsresor (TTD) (TTT/iDNA) med standardläget -Full . ProcessNameAnge (s) med .exe tillägget, ett enskilt objekt (PID/namn) eller en kommaavgränsad lista med objekt.

Obs!
Operativsystemet på nednivå före Windows 10 version 1703 kräver TSS_TTD.zip-paketet.

1. Ange mappsökvägen som innehåller tttracer.exe (PartnerTTD). Normalt behövs den här växeln bara om du vill framtvinga en specifik sökväg.
2. Full = -dumpfull (=standard)
Ring = ringbuffertläge
onLaunch = -onLaunch (kräver TSS_TTD)
3. Den maximala loggfilsstorleken. Åtgärden beror på -TTDMode. Full stannar när den maximala storleken har nåtts och Ring behåller den maximala storleken i ringbufferten.
4. Använd det här alternativet om du vill lägga till ytterligare alternativ för TTD (TTT/iDNA).
-Video Starta videoinspelning (kräver att .NET 3.5 installeras).
-WFPdiag Samla in spårningar med netsh Wfp capture kommandot .
-WireShark Starta WireShark. Följande parametrar kan konfigureras via filen tss_config.cfg .

1. WS_IF: används för -i. Ange gränssnittsnumret (till exempel _WS_IF=1).
2. WS_Filter: används för -f. Filtrera för gränssnittet (till exempel _WS_Filter="port 443").
3. WS_Snaplen: används för -s. Begränsa mängden data för varje bildruta. Den här parametern har bättre prestanda och är användbar för situationer med hög belastning (till exempel _WS_Snaplen=128).
4. WS_TraceBufferSizeInMB: används för -b FileSize (multiplicerat med 1024). Växla till nästa fil efter antalet megabyte. (till exempel _WS_TraceBufferSizeInMB=512, default=512 MB)
5. WS_PurgeNrFilesToKeep: används för -b files. Ersätt efter antalet filer. (till exempel _WS_PurgeNrFilesToKeep=20)
6. WS_Options: alla andra alternativ för -i (till exempel _WS_Options="-P").

Exempel:
Om du vill samla in WireShark på gränssnitten 15 och 11 anger du när TSS frågar efter ett gränssnittsnummer: 15 -i 11.

Som standard startar dumpcap.exe -i <all NICs> -B 1024 -n -t -w _WireShark-packetcapture.pcap -b files:10 -b filesize:524288Wireshark .
-WPR <WPRprofile>
1. -SkipPdbGen
2. -WPROptions '<Option string>'
Starta en WPR-profilspårning. <WPRprofile>är en av GeneralVSOD_Leak|CPUVSOD_CPU|||DeviceSQL||XamlWait||Graphic|Storage|RegistryNetworkMemory||BootGeneral|.

1. Hoppa över att generera symbolfiler (PDB-filer).
2. Ange alternativ för WPR.exe. Till exempel -WPROptions '-onoffproblemdescription "test description"'.

Exempel 1:
.\TSS.ps1 -StartAutoLogger -WPR BootGeneral -WPROptions '-addboot CPU' registrerar WPR-startspårningar med profilerna General och CPU .

Exempel 2:
.\TSS.ps1 -WPR General -WPROptions '-Start CPU -start Network -start Minifilter' kombinerar profiler (General, CPU, Networkoch Minifilter).
-Xperf <Profile>
1. -XperfMaxFileMB <Size>
2. -XperfTag <Pool Tag>
3. -XperfPIDs <PID>
4. -XperfOptions <Option string>
Starta Xperf. <Profile>är en av GeneralSBSLboot||DiskRegistry||SBSLPoolNPP||SMB2|Pool|NetworkMemoryLeak||CPU|.

1. Ange den maximala loggstorleken i MB (standardvärdet är 2 048 MB). Standardvärdet för SBSL*-scenarier är 16384 (samma för ADS_/NET_SBSL).
2. Ange PoolTag som ska loggas. Den här parametern används med profilen Pool eller PoolNPP (till exempel -Xperf Pool -XperfTag TcpE+AleE+AfdE+AfdX).
3. Ange ProcessID. Den här parametern används med profilen Leak (till exempel -Xperf Leak -XperfPIDs <PID>).
4. Ange andra alternativsträngar för Xperf.
-xray Starta xray för att diagnostisera ett system för kända problem.

I följande exempel visas hur du aktiverar flera supportverktyg (kommandon) under samma spårning.

.\TSS.ps1 -WPR <WPRprofile> -Procmon -Netsh|-NetshScenario <NetshScenario> -PerfMon <CounterSetName> -ProcDump <PID> -PktMon -SysMon -SDP <specialty> -xray -PSR -Video -TTD <PID[]|ProcessName[]|ServiceName[]>  

Parametrar i TSS-alternativ

Definierar specifika parametrar i TSS-alternativen för att styra, förbättra eller förenkla datainsamling.

Parameter Beskrivning
-AcceptEula Fråga inte först; kör för att acceptera ansvarsfriskrivningen (användbart för körningen -RemoteRun ).
-AddDescription <description> Lägg till en kort beskrivning av återskapandeproblemet. Namnet på den resulterande zip-filen innehåller en sådan beskrivning.
-Assist Hjälpmedelsläge.
-BasicLog Samla in den fullständiga grundläggande loggen (den grundläggande miniloggen samlas alltid in som standard).
-CollectComponentLog Använd med -Scenario. Som standard anropas inte funktioner för komponentinsamling i spårningen -Scenario . Den här växeln gör att komponentens insamlingsfunktioner kan anropas.
-CollectDump Samla in systemdump (memory.dmp) efter att alla spårningar har stoppats. -CollectDump kan användas med -Start och -Stop.
-CollectEventLog <Eventlog[]> Samla in angivna händelseloggar. Jokertecknet asterisk (*) kan användas för händelseloggens namn.

Exempel:
-CollectEventLog Security,*Cred*
Samla in säkerhet och alla händelseloggar som matchar *Cred* som 'Microsoft-Windows-CertificateServicesClient-CredentialRoaming/Operational'.
-CommonTask <<POD>|Full|Mini> Kör vanliga uppgifter innan du startar och efter att spårningen har stoppats.

<POD>: för närvarande är endast "NET" tillgängligt. Samla in ytterligare information innan du startar och efter att spårningen har stoppats.
Full: den fullständiga grundläggande loggen samlas in efter att spårningen har stoppats.
Mini: den grundläggande miniloggen samlas in när spårningen har stoppats.
-Crash Utlös en systemkrasch med NotMyFault vid repro-stoppet, eller när alla händelser har signalerats om de används med -WaitEvent.

Försiktighet:
Den här växeln tvingar fram en minnesdump (systemet startas om), så öppna filer sparas inte.
-CustomETL Lägg till anpassade ETL-spårningsprovidrar. Till exempel .\TSS.ps1 -WIN_CustomETL -CustomETL '{<GUID>}','Microsoft-Windows-PrimaryNetworkIcon' (en kommaavgränsad lista med enstaka citattecken '{GUID}' och/eller 'Provider-Name').
-DebugMode Kör med felsökningsläge för en utvecklare.
-VerboseMode Visa mer utförliga eller informationsbaserade utdata vid bearbetning av TSS-funktioner.
-Discard Används för att ta bort en datauppsättning i fas -Stop. *Stop- eller *Collect- så körs inte funktioner. xray och psSDP hoppas över.
-EnableCOMDebug Modul för att aktivera COM-felsökningsläge.
-ETLOptions<circular|newfile>:<ETLMaxSizeMB>:<ETLNumberToKeep>:<ETLFileMax> Ange alternativ som skickas till logman kommandon. Standardvärdet för circular ETLMaxSizeMB är 1024 och standardvärdet för newfile ETLMaxSizeMB är 512.

-StartAutologger stöder -ETLOptions circular:<ETLMaxSize>:<ETLNumberToKeep>:<ETLFileMax>bara , men ETLNumberToKeep kommer inte att köras förväntat.

Exempel.1:
-ETLOptions newfile:2048:5

Kör newfile loggar med storleken 2 048 MB. Behåll bara de senaste fem *.etl filerna. Standardinställningen för cirkulärt läge är circular:1024, och för newfile-läge är newfile:512:10.

Exempel 2:
-StartAutologger -ETLOptions circular:4096
Autologger kommer inte att lyda :<ETLNumberToKeep> och den accepterar bara läget cirkulärt.

Exempel 3:
-StartAutologger -ETLOptions circular:4096:10:3
Autologger kommer inte att lyda :<ETLNumberToKeep> och det accepterar bara läget cirkulär och "3" som antalet autologger generationer.
-ETWlevel <Info|Warning|Error> Ange händelsespårningsnivå. Standardvärdet är 0xFF.
-EvtDaysBack <N> Konvertera händelseloggar endast för de senaste N dagarna. Standardvärdet är 30 dagar. Det gäller även för SDP-rapporten.

Obs!
Säkerhetshändelseloggar hoppas över.
-ExternalScript <path to external PS file> Kör det angivna PowerShell-skriptet innan du startar spårningen.
-LogFolderPath <Drive:\path to log folder> Använd en annan loggmappsökväg för resulterande utdata i stället för standardplatsen (C:\MS_DATA). Det är användbart när enhet C: har ont om ledigt diskutrymme.
-MaxEvents <N> Som argument för '-WaitEvent Evt:..'undersöker parametern det senaste N antalet händelser med samma händelse-ID (standardvärdet är 1).
-Mini Samla endast in minimala data. Hoppa över noPSR, noSDP, noVideo, noXray, noZipoch noBasicLog.
-Mode <Basic|Medium|Advanced|Full|Verbose|VerboseEx|Hang|Restart
|Swarm|Kube|GetFarmdata|Permission|traceMS>
Kör skript i Basic, Medium, Advanced, Fulleller Verbose(Ex) läge för datainsamling. Restart startar om den associerade tjänsten.
-RemoteRun Använd när TSS körs på en fjärrvärd, till exempel via PsExec, i Azure-seriekonsolen eller med PowerShell-fjärrkommunikation. Den här parametern hämmar PSR, videoinspelning, startar TssClock och öppnar Explorer med slutliga resultat. I så fall bör du även överväga -AcceptEula.
-StartNoWait Vänta inte, och prompten kommer tillbaka omedelbart. Den här parametern är användbar för scenariot där en användare behöver logga ut.
-WaitEvent Övervaka för den angivna händelsen eller stopputlösaren. om den signaleras stoppas spårningarna automatiskt.

Det finns en mängd olika alternativ för att utlösa ett automatiskt stopp. Kör .\TSS.ps1 -Find Monitoring för att se användningen.
-Update
1. -UpdMode<Online|Lite>
Uppdatera TSS-paketet. Den kan användas tillsammans med -UpdMode Online|Lite.

Online är standard och Lite är lite-versionen Upd .
-Help
1. Common
2. ALL
3. Monitoring
4. Config
5. Keyword
Ange hjälpmeddelanden i olika scenarier.

1. Gemensamt allmänt hjälpmeddelande.
2. Alla tillgängliga alternativ.
3. Visa hjälpmeddelanden för övervakning och fjärrfunktioner.
4. Hjälp med alla konfigurationsparametrar.
5. Du kan ange valfritt nyckelord så visas hjälpinformationen om nyckelordet.
-Status Visa status för spårningen som körs, om det finns någon.

Hjälpskript och verktyg ingår

Hjälpskript och verktyg Beskrivning
\scripts\tss_EventCreate.ps1 Skapa en händelseloggpost i händelseloggfiler med händelse-ID:t.
\scripts\tss_SMB_Fix-SmbBindings.ps1 Användbart för att åtgärda skadade SMB-bindningar (LanmanServer, LanmanWorkstation eller NetBT). Se även -Collect NET_SMBsrvBinding.
\BINx64\kdbgctrl.exe Använd växeln -sd <dump type> för att ange typen för kernelkraschdump Full|Kernel, kdbgctrl -sd Fulltill exempel .
\BINx64\NTttcp.exe Prestandatester. Mer information finns i Testa dataflödet för virtuella datorer med hjälp av NTTTCP.
\BINx64\latte.exe Svarstidstester. Mer information finns i Testa nätverksfördröjning mellan virtuella Azure-datorer.
\BINx64\notmyfaultc.exe Framtvinga en minnesdump. Se NotMyFault v4.21 om TSS-kommandoraden innehåller -Crash.

Felsöka oväntade PowerShell-fel

  1. Kör den här cmdleten efter ett fel:

    .\TSS.ps1 -Stop -noBasiclog -noXray
    
  2. Stäng det öppnade upphöjda PowerShell-fönstret och starta ett nytt upphöjt PowerShell-fönster.

  3. Tillåt att PowerShell-skript körs på datorn med rätt ExecutionPolicy.

  4. Om du stöter på ett fel som anger att skriptet som körs är inaktiverat kan du prova följande metoder.

Metod 1

  1. Kör följande cmdlet:

    Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -force -Scope Process
    
  2. Kontrollera inställningarna med cmdleten Get-ExecutionPolicy -List att nej ExecutionPolicy med högre prioritet blockerar körningen av det här skriptet.

  3. Kör cmdleten .\TSS.ps1 <Desired Parameters> igen.

Metod 2 (alternativ)

Om skript blockeras av MachinePolicykör du följande cmdletar i ett upphöjt PowerShell-fönster:

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

Metod 3 (alternativ)

Om skript blockeras av UserPolicykör du följande cmdletar i ett upphöjt PowerShell-fönster:

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

Obs!

Metod 2 är bara en lösning för principen MachinePolicy - RemoteSigned. Om du också ser UserPolicy - RemoteSignedber du domänadministratören om ett tillfälligt undantag för grupprincip objekt (GPO).

I sällsynta fall kan du prova cmdleten -ExecutionPolicy Bypass .

Om din organisation tvingar GPO PowerShell-begränsat språkläge (System.Management.Automation.EngineIntrinsics.SessionState.LanguageMode -ne 'FullLanguage') ber du domänadministratören om ett tillfälligt GPO-undantag.

Vanliga frågor och svar

  • F1: Ändrar TSS-skriptet någon installation eller konfiguration av mitt system?

    S1: Nej, men en registerinställning krävs för att aktivera felsökningsloggning i vissa scenarier. Skriptet anger den nödvändiga nyckeln i början av datainsamlingen och återställer nyckeln till standardvärdet i slutet av datainsamlingen. Det kan också ta bort vissa cacheminnen (till exempel ARP-cachen eller namnmatchningscachen) i början av datainsamlingen för att observera problemet från loggarna.

  • F2: Lägger TSS-verktygsuppsättningen ytterligare belastning på servern?

    S2: Vissa loggningar (till exempel nätverksinsamling, ETW-spårningssamling och så vidare) som startas av TSS-verktygsuppsättningen kan belasta systemet något. Belastningen är vanligtvis på okunniga nivåer. Kontakta supportrepresentanten när du ser hög processor-, minnes- eller diskanvändning när du har startat TSS-verktygsuppsättningen.

  • F3: Varför kan vi inte återskapa problemet när TSS-verktygsuppsättningen körs?

    S3: TSS-verktygsuppsättningen kan ta bort all cachelagrad information i början. Det startar också nätverksfångst i ett promiskuöst läge, vilket ändrar standardbeteendena för nätverkskort (NIC). Dessa ändringar kan påverka problemet och problemen kan försvinna. Särskilt för specifika tidsproblem försvinner problemen på grund av TSS-verktygsuppsättningens datainsamling. Datainsamlingen börjar logga, vilket kan påverka problemet indirekt och ändra situationen.

  • F4: Varför svarar inte TSS-verktygsuppsättningen på länge?

    S4: I vissa fall kanske operativsystemets inbyggda kommandon som körs av TSS-verktygsuppsättningen inte svarar eller tar lång tid att slutföra. Kontakta din supportrepresentant om du upplever det här problemet.

  • Q5: Behöver jag oroa mig för diskutrymme eller något annat när jag kör TSS-verktygsuppsättningen under en längre tid?

    S5: All TSS-spårning är konfigurerad att köras med ringbuffertar, så att du kan köra verktygsuppsättningen under en längre tid om det behövs. TSS-verktygsuppsättningen beräknar också diskutrymmet i början av datainsamlingen och kan avslutas om det inte finns tillräckligt med diskutrymme. Om du ser hög diskanvändning när du har startat TSS-verktygsuppsättningen eller har andra problem med diskanvändningen av verktygsuppsättningen kontaktar du din supportrepresentant.

  • F6: Vad ska jag göra om jag får följande säkerhetsvarning när jag kör skriptet .\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")

    S6: I sällsynta fall kan du få den här säkerhetsvarningen. Du kan avblockera skriptet med hjälp av cmdleten PS C:\> Unblock-File -Path C:\TSS\TSS.ps1. Det här skriptet avblockeras alla andra moduler med hjälp av cmdleten Get-ChildItem -Recurse -Path C:\TSS\*.ps* | Unblock-File -Confirm:$false.

Licensavtal för slutanvändare (EULA)

Välj nedan om du vill visa LICENSVILLKOR FÖR PROGRAMVARA FRÅN MICROSOFT.

Microsoft Diagnostic Scripts and Utilities

These license terms are an agreement between you and Microsoft Corporation (or one of its affiliates). IF YOU COMPLY WITH THESE LICENSE TERMS, YOU HAVE THE RIGHTS BELOW. BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS.

  1. INSTALLATION AND USE RIGHTS. Med förbehåll för de villkor och begränsningar som anges i den här licensen ger Microsoft Corporation ("Microsoft") dig ("Kund" eller "du") en icke-exklusiv, icke-tilldelningsbar, fullständigt betald licens för att använda och återskapa skriptet eller verktyget som tillhandahålls under denna licens ("programvaran"), enbart för kundens interna affärsändamål, för att hjälpa Microsoft att felsöka problem med en eller flera Microsoft-produkter, förutsatt att licensen till programvaran inte innehåller några rättigheter till andra Microsoft-tekniker (till exempel produkter eller tjänster). "Använd" innebär att kopiera, installera, köra, komma åt, visa, köra eller på annat sätt interagera med programvaran.

    Du får inte underlicensiera programvaran eller någon användning av den via distribution, nätverksåtkomst eller på annat sätt. Microsoft förbehåller sig alla andra rättigheter som inte uttryckligen beviljas häri, oavsett om det rör sig om implikation, estoppel eller på annat sätt. Du får inte bakåtkompilera, dela upp eller demontera programvaran eller på annat sätt försöka härleda källkoden för programvaran, förutom och i den utsträckning som krävs enligt licensvillkoren från tredje part som styr användningen av vissa öppen källkod komponenter som kan ingå i programvaran, eller ta bort, minimera, blockera eller ändra meddelanden från Microsoft eller dess leverantörer i programvaran. Varken du eller dina representanter får använda programvaran som tillhandahålls härunder: (i) på ett sätt som är förbjudet enligt lag, förordning, myndighetsordning eller dekret; (ii) att kränka andras rättigheter; (iii) att försöka få obehörig åtkomst till eller störa någon tjänst, enhet, data, konto eller nätverk; iv) att distribuera skräppost eller skadlig kod. (v) på ett sätt som kan skada Microsofts IT-system eller försämra någon annans användning av dem; vi) i alla program eller situationer där användningen av programvaran kan leda till dödsfall eller allvarlig kroppsskada av någon person, eller till fysisk eller miljömässig skada, eller (vii) för att hjälpa, uppmuntra eller göra det möjligt för någon att göra något av ovanstående.

  2. DATA. Kunden äger alla rättigheter till data som kunden kan välja att dela med Microsoft via programvaran. Du kan läsa mer om datainsamling och användning i hjälpdokumentationen och sekretesspolicyn på https://aka.ms/privacy. Din användning av programvaran fungerar som ditt medgivande till dessa metoder.

  3. FEEDBACK. Om du ger feedback om programvaran till Microsoft ger du Microsoft, utan kostnad, rätt att använda, dela och kommersialisera din feedback på något sätt och i alla syften. Du kommer inte att ge någon feedback som omfattas av en licens som kräver att Microsoft licensierar sin programvara eller dokumentation till tredje part på grund av Microsoft, inklusive din feedback i sådan programvara eller dokumentation.

  4. EXPORT RESTRICTIONS. Kunden måste följa alla nationella och internationella exportlagar och förordningar som gäller för programvaran, som omfattar begränsningar för destinationer, slutanvändare och slutanvändning. For further information on export restrictions, visit https://aka.ms/exporting.

  5. REPRESENTATIONER OCH GARANTIER. Kunden följer alla tillämpliga lagar enligt detta avtal, inklusive vid leverans och användning av alla data. Kunden eller en designör som godkänner dessa villkor på uppdrag av en enhet representerar och garanterar att den (i) har full behörighet och befogenhet att ingå och utföra sina skyldigheter enligt detta avtal, (ii) har full behörighet och befogenhet att binda sina dotterbolag eller organisation till villkoren i detta avtal, och (iii) kommer att skydda den andra partens tillstånd innan någon källkod ges på ett sätt som skulle omfattas av detta avtal. den andra partens immateriella egendom till andra licensvillkor eller kräva att den andra parten distribuerar källkoden till någon av dess tekniker.

  6. GARANTIFRISKRIVNING. PROGRAMVARAN TILLHANDAHÅLLS "SOM DEN ÄR", UTAN GARANTI AV NÅGOT SLAG, UTTRYCKLIG ELLER UNDERFÖRSTÅDD, INKLUSIVE MEN INTE BEGRÄNSAT TILL GARANTIER FÖR SÄLJBARHET, LÄMPLIGHET FÖR ETT VISST SYFTE OCH ICKE-INFRINGEMENT. MICROSOFT ELLER DESS LICENSGIVARE SKALL UNDER INGA OMSTÄNDIGHETER VARA ANSVARIGA FÖR DIREKTA, INDIREKTA, TILLFÄLLIGA, SÄRSKILDA, EXEMPLARISKA ELLER FÖLJDSKADOR (INKLUSIVE, MEN INTE BEGRÄNSAT TILL, UPPHANDLING AV ERSÄTTNINGSVAROR ELLER TJÄNSTER; FÖRLUST AV ANVÄNDNING, DATA ELLER VINSTER; ELLER VERKSAMHETSAVBROTT) MEN ORSAKAT OCH PÅ NÅGON ANSVARSTEORI, VARE SIG I KONTRAKT, STRIKT ANSVAR, ELLER TORT (INKLUSIVE VÅRDSLÖSHET ELLER PÅ ANNAT SÄTT) SOM UPPSTÅR PÅ NÅGOT SÄTT UR ANVÄNDNINGEN AV PROGRAMVARAN, ÄVEN OM INFORMERAS OM MÖJLIGHETEN TILL SÅDAN SKADA.

  7. BEGRÄNSNING AV OCH UTESLUTNING AV SKADOR. OM DU HAR NÅGON GRUND FÖR ATT ÅTERSTÄLLA SKADOR TROTS FÖREGÅENDE ANSVARSFRISKRIVNING KAN DU ÅTERSTÄLLA FRÅN MICROSOFT OCH DESS LEVERANTÖRER ENDAST DIREKTA SKADOR UPP TILL USA. 00. DU KAN INTE ÅTERSTÄLLA ANDRA SKADOR, INKLUSIVE FÖLJDSKADOR, FÖRLORADE VINSTER, SÄRSKILDA, INDIREKTA ELLER TILLFÄLLIGA SKADOR. Den här begränsningen gäller för (i) allt som rör programvara, tjänster, innehåll (inklusive kod) på webbplatser från tredje part eller program från tredje part; och (ii) anspråk för avtalsbrott, garanti, garanti eller villkor; strikt ansvar, vårdslöshet eller annan tort; eller något annat anspråk; i varje fall i den utsträckning som tillåts enligt tillämplig lag. It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your state, province, or country may not allow the exclusion or limitation of incidental, consequential, or other damages.

  8. BINDING ARBITRATION AND CLASS ACTION WAIVER. Det här avsnittet gäller om du bor i (eller, om ett företag är ditt huvudföretag) USA. If you and Microsoft have a dispute, you and Microsoft agree to try for 60 days to resolve it informally. Om du och Microsoft inte kan, samtycker du och Microsoft till att binda enskilda skiljeförfaranden inför American Arbitration Association enligt Federal Arbitration Act ("FAA") och att inte stämma i domstol inför en domare eller jury. Instead, a neutral arbitrator will decide. Class action lawsuits, class-wide arbitrations, private attorney-general actions, and any other proceeding where someone acts in a representative capacity are not allowed; nor is combining individual proceedings without the consent of all parties. The complete Arbitration Agreement contains more terms and is at https://aka.ms/arb-agreement-4. You and Microsoft agree to these terms.

  9. LAG OCH PLATS. If U.S. federal jurisdiction exists, you and Microsoft consent to exclusive jurisdiction and venue in the federal court in King County, Washington for all disputes heard in court (excluding arbitration). If not, you and Microsoft consent to exclusive jurisdiction and venue in the Superior Court of King County, Washington for all disputes heard in court (excluding arbitration).

  10. ENTIRE AGREEMENT. This agreement, and any other terms Microsoft may provide for supplements, updates, or third-party applications, is the entire agreement for the software.