Share via


TSS) (TroubleShootingScript 工具組簡介

本文介紹疑難解答Script (TSS) 工具組,並提供常見問題的解答。

適用於: 支援的 Windows Server 和 Windows 用戶端版本

TSS 工具組包含以 PowerShell 為基礎的工具,以及數據收集和診斷的架構。 工具組旨在簡化數據收集,並協助有效率且安全地解決案例。

此工具組包含數個 PowerShell 腳本和可執行文件,這些檔案全都由 Microsoft 簽署。 根據選取的參數,TSS 會使用一或多個腳本和可執行檔來收集所需的記錄。

您可以從 下載工具組作為 zip 檔案 (TSS.zip) 。https://aka.ms/getTSS

必要條件

以下是工具組正確執行的一些必要條件:

  • TSS 工具組必須在提升許可權的 PowerShell 視窗中,由具有本機系統系統管理員許可權的帳戶執行。 不支援在 Windows PowerShell 整合式腳本環境 (ISE) 中執行 TSS 工具組。 必須接受使用者許可協定 (EULA) 。 一旦接受 EULA,TSS 工具組將不會再次提示提供 EULA。

  • PowerShell 腳本執行原則應該在程式層級設定為 RemoteSigned ,方法是從提升許可權的 PowerShell 命令提示字元執行 Cmdlet Set-ExecutionPolicy -scope Process -ExecutionPolicy RemoteSigned -Force

    注意事項

    進程層級變更只會影響目前的PowerShell會話。

如何啟動 TSS 工具組

視案例而定,您可以使用不同的參數來啟動 TSS.ps1-Start動詞是預設和選擇性的動詞,可視需要以互補動詞取代。 互補 -Start 動詞為 -StartAutoLogger-StartDiag-StartNoWait-CollectLog

動詞 描述
-Start -Start 詞會啟動 Windows 事件追蹤 (ETW) 元件追蹤或支援工具,例如 Windows Performance Recorder (WPR) 。

[-Start] 詞是選擇性的,但可以取代為互補 -start 選項。
-StartAutoLogger 若要在開機時收集這些記錄,請使用 -StartAutoLogger 來取代 -Start

將它與 .\TSS.ps1 -Stop Cmdlet 搭配使用,以在問題重現後停止追蹤。
-StartDiag 雖然此參數目前沒有太多用處,但未來應該用於多個案例。 從今天起,它可以與其他自變數結合,例如 NET_DFSn 取得 DFSN 命名空間的診斷。
-StartNoWait 此參數可讓追蹤保持作用中,即使您註銷也一樣。

將它與 .\TSS.ps1 -Stop Cmdlet 搭配使用,以在問題重現後停止追蹤。
-CollectLog 這個參數通常與 自 DND_SetupReport變數 一起使用。

例如:
.\TSS.ps1 -Collectlog DND_SetupReport

當您停止收集數據時,也會自動收集與追蹤相關的記錄。

使用 TSS 工具組的語法

參數 描述
<placeholder> 佔位元的角括號 (<>) 字串必須以實際案例名稱、追蹤元件、命令或值取代。
[optional] 方括弧中的關鍵詞或值 ([ ]) 是選擇性的。 例如, [module:int] 表示模組和間隔是選擇性的。 如果 [<xx>:<yy>] 省略 ,則會使用預設值。
| 此參數表示 'OR'。 您可以選擇其中一個可用的選項。
: 兩個值之間的分隔符。

Cmdlet 範例

PowerShell Cmdlet 描述
.\TSS.ps1 -PerfMon [General:10] 此參數表示 PerfMon CounterSetName= GeneralInterval= 10 秒數。 省略 時 [General:10] ,預設值會開始,因此 -PerfMon 的效果與 -PerfMon General -PerfIntervalSec 10相同。
.\TSS.ps1 [-StopWaitTimeInSec <N>] 此參數表示自 -StopWaitTimeInSec 變數是選擇性的,但如果已指定,則必須要有 =“秒數” 的值 <N>

Windows 事件追蹤 (ETW) 追蹤

ETW 追蹤 PowerShell Cmdlet 描述
啟用案例追蹤。 .\TSS.ps1 -Scenario <ScenarioName> 支援的案例名稱會使用 TSS.ps1 -ListSupportedScenarioTrace Cmdlet 列出。
啟用元件追蹤。 .\TSS.ps1 <-ComponentName> <-ComponentName> ... 支援的 <-componentName> 會使用 TSS.ps1 -ListSupportedTrace Cmdlet 列出。
以無等候模式啟動追蹤。 .\TSS.ps1 -StartNoWait -Scenario <ScenarioName>

.\TSS.ps1 -Stop
提示會立即傳回,因此您可以註銷或使用類似 的 ShutdownCmdlet。

Cmdlet .\TSS.ps1 -Stop 會停止追蹤。

注意事項

若要列出元件和/或案例的所有提供者 GUID,請使用 -ListETWProviders Cmdlet。 例如:

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

支援工具和命令

啟動支援工具或命令 (例如 ProcMon、ProcDump、netsh、效能監視器 (PerfMon) 、WPR 或 Radar) ,以使用特殊化擷取的其他工具來增強記錄收集。

PowerShell Cmdlet 描述
-Fiddler 收集 Fiddler 追蹤。 它需要安裝 Fiddler。

選取 [工具>選項],然後選取 [HTTPS] 索引標籤上的 [解密 HTTPS 流量],以啟用流量解密選項。
-GPresult <Start|Stop|Both> 收集階段、 stopboth上的 startSysInternals Handle.exe 輸出。
-Handle <Start|Stop|Both> 收集階段、 stopboth上的 startSysInternals Handle.exe 輸出。
-LiveKD <Start|Stop|Both> 啟動 SysInternals LiveKD -ml (即時核心傾印) 。
<Start>:傾印會在重現開始時進行。
<Stop>:傾印會在停止時進行。
<Both>:傾印會在開始和停止時進行。
-Netsh
1. -NetshOptions '<Option string>'
2. -NetshMaxSizeMB <Int>
3. -noPacket
啟動網路封包擷取。

1.指定 的其他選項 Netsh。 例如,'capturetype=both captureMultilayer=yes provider=Microsoft-Windows-PrimaryNetworkIcon provider={<GUID>}'
2.以 MB 為 Netsh 單位的最大記錄大小 (MB) (例如, -NetshMaxSizeMB 4096) 。 預設值為 2048。
3.防止封包被擷取 Netsh , (只會擷取中的 ETW 追蹤 ScenarioName) 。
-NetshScenario
1. -NetshOptions '<Option string>'
2. -NetshMaxSizeMB <Int>
3. -noPacket
啟動案例 Netsh 追蹤。 支援的 <ScenarioName> 會使用 -ListSupportedNetshScenario Cmdlet 列出。

1.指定 的其他選項 Netsh。 例如,'capturetype=both captureMultilayer=yes provider=Microsoft-Windows-PrimaryNetworkIcon provider={<GUID>}'
2.以 MB 為單位的最大記錄大小 Netsh (例如, -NetshMaxSizeMB 4096) 。 預設值為 2048。
3.防止封包擷取 Netsh , (只會擷取案例名稱中的 ETW 追蹤) 。
-PerfMon <CounterSetName> [-PerfIntervalSec N] [-PerfMonMaxMB <N>] [-PerfMonCNF <[[hh:]mm:]ss>]
1. -PerfIntervalSec <Interval in sec>
2. -PerfMonMaxMB <N>
3. -PerfMonCNF <[[hh:]mm:]ss>
啟動 效能監視器記錄。 <CounterSetName>可以使用 -ListSupportedPerfCounter Cmdlet 列出 。

1.設定記錄檔的間隔 PerfMon (預設值為 10 秒) 。
2.指定 MB 記錄大小上限 Perfmon 的 int 值, (預設值為 2048) 。
3.在指定的時間經過或超過 的大小 <PerfMonMaxMB> 上限時,建立新的檔案。
-PerfMonLong <CounterSetName> [-PerfLongIntervalMin N] [-PerfMonMaxMB <N>] [-PerfMonCNF <[[hh:]mm:]ss>]
1. -PerfLongIntervalMin <Interval in min>
效能監視器 長間隔。

1.設定記錄檔的間隔 PerfMonLong (預設值為 10 分鐘) 。
-PktMon 收集 Windows Server 2019、 (Windows 10 版本 1809 及更新版本) 上的封包監視數據) 。 PktMon:Drop 只會收集已卸除的封包。
-PoolMon <Start|Stop|Both> 收集 PoolMonstopbothstart
-ProcDump <PID[]|ProcessName.exe[]|ServiceName[]>
1. -ProcDumpOption<Start|Stop|Both>-ProcDumpInterval <N>:<Interval in sec>
2. -ProcDumpInterval <N>:<Interval in sec>
3. -ProcDumpAppCrash
使用 SysInternalsProcDump.exe,擷取單一專案的使用者傾 或以逗號分隔的項目清單。 根據預設,傾印會在重現開始時進行並停止。 輸入 ProcessName 擴展 () .exe

1. Start:傾印會在重現開始時進行。
Stop:傾印會在停止時進行。
Both (預設) :傾印會在啟動和停止時進行。
2.需要重複擷取傾印時,請使用此選項。
N:傾印數目
Int:以秒為單位的間隔
預設值為 3:10。
3.此參數會啟用 ProcDump -ma -e,當進程遇到未處理的例外狀況時,會寫入完整傾印。
-ProcMon
1. -ProcmonAltitude <N>
2. -ProcmonPath <folder path to Procmon.exe>
3. -ProcmonFilter <filter-file.pmc>
啟動 SysInternals Procmon.exe

1.指定字串值 (預設值為 ProcmonAltitude 385200) 。 用來 fltmc instances 顯示篩選驅動程式高度。 使用低於可疑特定驅動程序的數位。 值 45100 會顯示幾乎所有專案。
2.根據預設指定 Procmon.exe (的路徑,TSS 會使用內建的 Procmon) 。
3.指定 Procmon (的配置檔,例如 ,ProcmonConfiguration.pmc) 位於 \config 資料夾中。
-PSR 啟動問題步驟錄製器。
-Radar <PID[]|ProcessName[]|ServiceName[]> 收集洩漏診斷資訊 (rdrleakdiag.exe) 。

例如,-Radar AppIDSvc
-RASdiag 收集追蹤。 Ras Netsh 診斷集追蹤已啟用。
-SDP <SpecialityName[]>
1. -SkipSDPList "<xxx>","<yyy>"
2. <SpecialityName>
針對指定的特製,收集支持診斷套件 (SDP) 。 如需 和 SkipSDPListSpecialityNames完整清單,請使用 .\tss -help Cmdlet。

略過執行 SDP 報表時,在環境中停止回應的 SDP 模組名稱逗號分隔清單。
-SysMon 根據預設,將 SysInternals 系統監視器 (SysMon) 記錄收集 (sysmonConfig.xml 在 config 資料夾中) 。
-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>'
使用預設 -Full 模式 (TTT/iDNA) 的 TTD) (開始時間移動偵錯。 ProcessName 輸入擴展名為 的 () .exe、 (PID/名稱) 的單一專案或以逗號分隔的項目清單。

備註:
Windows 10 版本 1703 之前的舊版操作系統需要 TSS_TTD.zip 套件。

1.指定包含 tttracer.exe( PartnerTTD) 的資料夾路徑。 一般而言,只有當您想要強制執行特定路徑時,才需要此參數。
2. Full = -dumpfull (=default)
Ring = 信號緩衝區模式
onLaunch = -onLaunch (需要TSS_TTD)
3.記錄檔大小上限。 工作相依於 -TTDModeFull 達到大小上限時會停止,並將 Ring 大小上限保留在環形緩衝區中。
4. 使用此選項可新增 TTD (TTT/iDNA) 的任何其他選項。
-Video 啟動視訊擷取 (需要安裝 .NET 3.5) 。
-WFPdiag 使用 命令收集追蹤 netsh Wfp capture
-WireShark 啟動WireShark。 下列參數可透過 tss_config.cfg 檔案進行設定。

1. WS_IF:用於 -i。 指定介面編號 (例如, _WS_IF=1) 。
2. WS_Filter:用於 -f。 篩選介面 (例如, _WS_Filter="port 443") 。
3. WS_Snaplen:用於 -s。 限制每個框架的數據量。 此參數具有較佳的效能,而且對於 (例如 _WS_Snaplen=128) 的高負載情況很有説明。
4. WS_TraceBufferSizeInMB:用於 -b FileSize (乘以 1024) 。 切換至 MB 數之後的下一個檔案。 例如, (,default _WS_TraceBufferSizeInMB=512=512 MB)
5. WS_PurgeNrFilesToKeep:用於 -b files。 在檔案數目之後取代 。 例如, () _WS_PurgeNrFilesToKeep=20
6. WS_Options: (的任何其他選項 -i ,例如, _WS_Options="-P") 。

例如:
若要在介面 15 和 11 上收集 WireShark,請在 TSS 提示輸入介面號碼時輸入: 15 -i 11

根據預設,Wireshark 會啟動 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>'
啟動 WPR 設定檔追蹤。 <WPRprofile>是 其中一GeneralBootGeneral||Device|GraphicWaitMemory|XamlNetwork||||VSOD_Leak|CPU|||SQLStorageRegistry|VSOD_CPU個 。

1.略過在 PDB 檔案) (產生符號檔。
2.指定 WPR.exe的選項。 例如,-WPROptions '-onoffproblemdescription "test description"'

範例 1:
.\TSS.ps1 -StartAutoLogger -WPR BootGeneral -WPROptions '-addboot CPU'會使用和 CPU 配置檔擷取 WPR 開機追蹤General

範例 2:
.\TSS.ps1 -WPR General -WPROptions '-Start CPU -start Network -start Minifilter' 會結合配置檔 (GeneralCPUNetworkMinifilter) 。
-Xperf <Profile>
1. -XperfMaxFileMB <Size>
2. -XperfTag <Pool Tag>
3. -XperfPIDs <PID>
4. -XperfOptions <Option string>
啟動 Xperf。 <Profile>是 其中一GeneralCPURegistry||LeakSMB2|Pool|||SBSLboot|Disk||NetworkPoolNPP||MemorySBSL個 。

1.指定 MB 的記錄大小上限, (預設值為 2048 MB) 。 針對 ADS_/NET_SBSL) ,SBSL* 案例的預設值為 16384 (相同。
2.指定 PoolTag 要記錄。 此參數會與 PoolPoolNPP 配置檔 (搭配使用,例如, -Xperf Pool -XperfTag TcpE+AleE+AfdE+AfdX) 。
3.指定 ProcessID。 此參數會與配置檔 (一起 Leak 使用,例如, -Xperf Leak -XperfPIDs <PID>) 。
4.指定 的其他選項字串。Xperf
-xray 啟動 xray 以診斷系統中的已知問題。

下列範例說明如何啟用多個支援工具, (在相同追蹤期間) 命令。

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

TSS 選項內的參數

定義 TSS 選項內的特定參數,以控制、增強或簡化數據收集。

參數 描述
-AcceptEula 一開始不要詢問;執行 以接受免責聲明 (適用於 -RemoteRun 執行) 。
-AddDescription <description> 新增重現問題的簡短描述。 產生的 zip 檔案名稱會包含這類描述。
-Assist 輔助功能模式。
-BasicLog 收集完整的基本記錄 (預設一律會收集迷你基本記錄) 。
-CollectComponentLog 搭配 使用 。-Scenario 根據預設,不會在追蹤中 -Scenario 呼叫元件收集函式。 此參數可讓您呼叫元件收集函式。
-CollectDump 在停止所有追蹤之後,收集系統傾印 ( memory.dmp) 。 -CollectDump 可以搭配和 -Start-Stop使用。
-CollectEventLog <Eventlog[]> 收集指定的事件記錄檔。 星號 (*) 通配符可用於事件記錄檔名稱。

例如:
-CollectEventLog Security,*Cred*
收集安全性和符合 的所有事件記錄檔, *Cred* 例如 'Microsoft-Windows-CertificateServicesClient-CredentialRoaming/Operational'
-CommonTask <<POD>|Full|Mini> 在開始追蹤之前和停止追蹤之後執行一般工作。

<POD>:目前只有 “NET” 可供使用。 在開始追蹤之前和停止追蹤之後收集其他資訊。
Full:停止追蹤之後會收集完整的基本記錄。
Mini:停止追蹤之後會收集迷你基本記錄。
-Crash 在停止重現時觸發系統當機NotMyFault,或在搭配 使用時發出所有事件的訊號之後觸發 。-WaitEvent

謹慎:
此參數會在系統重新啟動) (強制記憶體轉儲,因此不會儲存開啟的檔案。
-CustomETL 新增自訂 ETL 追蹤提供者。 例如, .\TSS.ps1 -WIN_CustomETL -CustomETL '{<GUID>}','Microsoft-Windows-PrimaryNetworkIcon' (單引號 '{GUID}' 和/或 'Provider-Name') 的逗號分隔清單。
-DebugMode 使用開發人員的偵錯模式執行 。
-VerboseMode 在處理 TSS 函式時顯示更多詳細資訊或信息輸出。
-Discard 用來在階段 -Stop捨棄數據集。 *Stop-*Collect- 函式將不會執行。 xray 會略過與 psSDP
-EnableCOMDebug 開啟 COM 偵錯模式的模組。
-ETLOptions<circular|newfile>:<ETLMaxSizeMB>:<ETLNumberToKeep>:<ETLFileMax> 設定傳遞至 logman 命令的選項。 的預設值為 circular ETLMaxSizeMB 1024,而的預設值為 newfile ETLMaxSizeMB 512。

-StartAutologger 僅支援 -ETLOptions circular:<ETLMaxSize>:<ETLNumberToKeep>:<ETLFileMax>,但 ETLNumberToKeep 不會預期執行。

Example.1:
-ETLOptions newfile:2048:5

執行 newfile 大小為 2048 MB 的記錄。 只保留最後五 *.etl 個檔案。 循環模式的預設設定為 circular:1024,而 newfile 模式的預設設定為 newfile:512:10

範例 2:
-StartAutologger -ETLOptions circular:4096
Autologger 不會遵守 :<ETLNumberToKeep> ,且只會接受迴圈模式。

範例 3:
-StartAutologger -ETLOptions circular:4096:10:3
Autologger 不會遵守 :<ETLNumberToKeep> ,而且只會接受迴圈模式和“3” 作為世代數 autologger 目。
-ETWlevel <Info|Warning|Error> 設定事件追蹤層級。 預設值為 0xFF。
-EvtDaysBack <N> 只轉換過去 N 天的事件記錄。 預設值是 30 天。 它也適用於 SDP 報表。

備註:
將會略過安全性事件記錄檔。
-ExternalScript <path to external PS file> 啟動追蹤之前,請先執行指定的 PowerShell 腳本。
-LogFolderPath <Drive:\path to log folder> 針對產生的輸出數據使用不同的記錄資料夾路徑,而不是使用預設位置 (C:\MS_DATA) 。 當磁碟 驅動器 C: 的可用磁碟空間不足時,這會很有用。
-MaxEvents <N> 作為的自 '-WaitEvent Evt:..'變數,參數會調查具有相同事件標識碼的最後 N 個事件數目, (預設值為 1) 。
-Mini 只收集最少的數據。 略過 noPSRnoSDPnoVideonoXraynoZipnoBasicLog
-Mode <Basic|Medium|Advanced|Full|Verbose|VerboseEx|Hang|Restart
|Swarm|Kube|GetFarmdata|Permission|traceMS>
在、Medium、、 AdvancedFullVerbose(Ex) 模式中Basic執行文本以進行數據收集。 Restart 將會重新啟動相關聯的服務。
-RemoteRun 在遠端主機上執行 TSS 時使用,例如透過 PsExec、在 Azure 序列控制台中,或透過 PowerShell 遠端執行。 此參數會禁止 PSR、視訊錄製、啟動 TssClock,以及開啟具有最終結果的 Explorer。 在這種情況下,也請考慮 -AcceptEula
-StartNoWait 請勿等候,提示會立即傳回。 此參數適用於使用者需要註銷的案例。
-WaitEvent 監視指定的事件或停止觸發程式;如果收到訊號,追蹤將會自動停止。

有各種不同的選項可觸發自動停止。 執行 .\TSS.ps1 -Find Monitoring 以查看使用量。
-Update
1. -UpdMode<Online|Lite>
更新 TSS 套件。 它可以與 -UpdMode Online|Lite一起使用。

Online 是預設值,而 LiteUpd Lite 版本。
-Help
1. Common
2. ALL
3. Monitoring
4. Config
5. Keyword
提供各種案例的說明訊息。

1.一般說明訊息。
2.所有可用的選項。
3.顯示監視和遠端功能的說明訊息。
4.協助處理所有組態參數。
5.您可以輸入任何關鍵詞,它會顯示該關鍵詞的說明資訊。
-Status 如果有的話,顯示執行中追蹤的狀態。

包含的協助程式腳本和工具

協助程式腳本和工具 描述
\scripts\tss_EventCreate.ps1 使用事件標識碼在事件記錄檔中建立事件記錄檔專案。
\scripts\tss_SMB_Fix-SmbBindings.ps1 適用於修正 LanmanServer、LanmanWorkstation 或 NetBT) (損毀的 SMB 系結。 -Collect NET_SMBsrvBinding請參閱 。
\BINx64\kdbgctrl.exe 使用 參數-sd <dump type>來設定核心損毀傾印類型Full|Kernel,例如 。 kdbgctrl -sd Full
\BINx64\NTttcp.exe 效能測試。 如需詳細資訊,請 參閱使用NTTTCP測試VM網路輸送量
\BINx64\latte.exe 延遲測試。 如需詳細資訊,請 參閱測試 Azure VM 之間的網路等待時間
\BINx64\notmyfaultc.exe 強制記憶體轉儲。 如果 TSS 命令行包含 -Crash,請參閱 NotMyFault v4.21

針對非預期的 PowerShell 錯誤進行疑難解答

  1. 失敗後執行此 Cmdlet:

    .\TSS.ps1 -Stop -noBasiclog -noXray
    
  2. 關閉已開啟提升許可權的 PowerShell 視窗,然後啟動新的已提升許可權的 PowerShell 視窗。

  3. 允許 PowerShell 腳本以適當的 ExecutionPolicy在系統上執行。

  4. 如果您遇到指出已停用執行中腳本的錯誤,請嘗試下列方法。

方法 1

  1. 執行下列 Cmdlet:

    Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -force -Scope Process
    
  2. 使用沒有較高優先順序的 Cmdlet ExecutionPolicy 來確認設定Get-ExecutionPolicy -List會封鎖此腳本的執行。

  3. 再次執行 .\TSS.ps1 <Desired Parameters> Cmdlet。

方法 2 (替代)

如果腳本遭到 MachinePolicy封鎖,請在提升許可權的 PowerShell 視窗中執行下列 Cmdlet:

  1. Set-ItemProperty -Path HKLM:\Software\Policies\Microsoft\Windows\PowerShell -Name ExecutionPolicy -Value RemoteSigned
    
  2. Set-ItemProperty -Path HKLM:\Software\Policies\Microsoft\Windows\PowerShell -Name EnableScripts  -Value 1 -Type DWord
    

方法 3 (替代)

如果腳本遭到 UserPolicy封鎖,請在提升許可權的 PowerShell 視窗中執行下列 Cmdlet:

  1. Set-ItemProperty -Path HKLM:\Software\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell -Name ExecutionPolicy -Value RemoteSigned
    
  2. Set-ItemProperty -Path HKLM:\Software\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell -Name EnableScripts  -Value 1 -Type DWord
    

注意事項

方法 2 只是原則 的 MachinePolicy - RemoteSigned因應措施。 如果您也看到 UserPolicy - RemoteSigned,請向網域管理員要求暫時 群組原則 物件 (GPO) 豁免。

在罕見的情況下,您可以嘗試 -ExecutionPolicy Bypass Cmdlet。

如果您的組織強制執行 GPO PowerShell 限制語言模式 (System.Management.Automation.EngineIntrinsics.SessionState.LanguageMode -ne 'FullLanguage') ,請向網域系統管理員要求暫時的 GPO 豁免。

常見問題 (常見問題)

  • 問 1:TSS 腳稿是否會變更系統的任何設定或設定?

    A1:否,但在某些情況下啟用偵錯記錄需要登錄設定。 腳本會在數據收集開始時設定必要的索引鍵,並將索引鍵還原為數據收集結尾處的預設值。 它也可以刪除一些快取 (例如,ARP 快取或名稱解析快取) 在數據收集開始時,觀察記錄中的問題。

  • 問 2:TSS 工具組是否在伺服器上載入了額外的負載?

    A2:某些記錄 (例如,網路擷取、ETW 追蹤集合等等,TSS 工具組所啟動的) 可能會對系統產生次要負載。 負載通常位於可忽略的層級。 當您在啟動 TSS 工具組之後看到高 CPU、記憶體或磁碟使用量時,請連絡您的支援代表。

  • 問 3:為什麼無法在 TSS 工具組執行時重現問題?

    A3:TSS 工具組可能會在開始時刪除所有快取的資訊。 它也會以混雜模式啟動網路擷取,這會變更網路介面卡 (NIC) 預設行為。 這些變更可能會影響問題,而且問題可能會消失。 特別是針對特定計時問題,問題會因為 TSS 工具組的數據收集而消失。 數據收集會開始記錄,這可能會間接影響問題並變更情況。

  • 問 4:為什麼 TSS 工具組長時間沒有回應?

    A4:在某些情況下,TSS 工具組所執行的操作系統內建命令可能不會回應或需要很長的時間才能完成。 如果您遇到此問題,請連絡您的支援代表。

  • 問 5:當我長時間執行 TSS 工具組時,是否需要擔心磁碟空間或其他任何問題?

    A5:所有 TSS 追蹤都設定為使用環形緩衝區執行,因此您可以視需要長時間執行工具組。 TSS 工具組也會計算數據收集開始時的磁碟空間,如果磁碟空間不足,可能會結束。 如果您在啟動 TSS 工具組之後看到高磁碟使用量,或對工具組的磁碟使用量有任何其他疑慮,請連絡您的支援代表。

  • 問 6:如果我在執行 .\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:在罕見的情況下,您可能會收到此安全性警告。 您可以使用 Cmdlet PS C:\> Unblock-File -Path C:\TSS\TSS.ps1來解除封鎖腳本。 此腳本會使用 Cmdlet Get-ChildItem -Recurse -Path C:\TSS\*.ps* | Unblock-File -Confirm:$false來解除封鎖所有其他模組。

最終使用者許可協定 (EULA)

選取下方以檢視 MICROSOFT SOFTWARE 授權條款。

Microsoft 診斷腳本和公用程式

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. 根據此授權中所設定的條款和限制,Microsoft Corporation (“Microsoft”) 會授與您 (「客戶」或「您」) 非獨佔、不可指派、完全付費的授權,以使用和重現此授權所提供的腳本或公用程式, (「軟體」) ,僅供客戶的內部業務用途,協助 Microsoft 針對一或多個 Microsoft 產品問題進行疑難解答, 如果軟體的這類授權不包含其他 Microsoft 技術 (的任何許可權,例如產品或服務) 。 「使用」表示複製、安裝、執行、存取、顯示、執行或以其他方式與軟體互動。

    您不得透過散發、網路存取或其他方式來子授權軟體或使用該軟體。 Microsoft 保留此處未明確授與的所有其他權利,不論是隱含、強制解說或其他方式。 您可能無法反向工程、譯譯或反組譯軟體,或嘗試衍生軟體的原始程式碼,但第三方授權條款規定使用軟體中可能包含的特定 開放原始碼 元件,或移除、最小化、封鎖或修改 Microsoft 或其供應商在軟體中的任何通知之外。 您或您的代表都不得使用此處提供的軟體: (我) 法律、法規、政府機關或律師所禁止的方式; (ii) 違反他人的許可權; (iii) 嘗試取得未經授權的存取權,或中斷任何服務、裝置、數據、帳戶或網路; (iv) 散發垃圾郵件或惡意代碼; (v) 的方式可能會損害 Microsoft 的 IT 系統,或妨礙其他人使用它們; (vi) 任何應用程式或使用軟體可能會導致任何人的傷害或嚴重傷害,或實體或環境損害的情況;或 () 協助、鼓勵或讓任何人執行上述任何動作。

  2. 數據。 客戶擁有其選擇透過使用軟體與 Microsoft 共用之數據的所有許可權。 您可以在 說明檔案與隱私聲明中深入瞭解資料收集和使用,請參閱 https://aka.ms/privacy。 您對軟體的使用是以您同意這些做法的方式運作。

  3. FEEDBACK. 如果您將軟體的意見反應提供給 Microsoft,您可以免費授與 Microsoft 以任何方式和任何用途使用、分享及商業化意見反應的許可權。 由於 Microsoft 在這類軟體或檔中包含您的意見反應,您將不會提供任何受限於授權的意見反應,要求 Microsoft 將其軟體或文件授權給第三方。

  4. EXPORT RESTRICTIONS. 客戶必須遵守適用於軟體的所有國內及國際導出法律和法規,其中包括目的地、使用者和終端使用的限制。 For further information on export restrictions, visit https://aka.ms/exporting.

  5. 表示法和擔保。 客戶將遵守本合約下的所有適用法律,包括傳遞和使用所有數據。 客戶或被設計者代表實體同意這些條款,並保證它 (i) 擁有完整許可權,可以根據本合約輸入並履行其義務, (ii) 擁有將其分支機構或組織系結至本合約條款的完整許可權和授權, 和 (iii) 會先保護另一方的許可權,再以將另一方的智慧財產權授與任何其他授權條款,或要求另一方將原始程式碼散發給其任何技術的方式提供任何原始程式碼。

  6. 瑕疵擔保免責聲明。 軟體會依「原狀」提供,不含任何種類的明示或隱含擔保,包括但不限於適售性、適合特定用途和非自定義的擔保。 在任何情況下,MICROSOFT 或其授權者不得對任何直接、間接、意外、特殊、採購或衍生損害負任何責任, (包括但不限於採購替代商品或服務;遺失使用、數據或獲利;不過,或業務中斷) 造成和任何責任理論,無論是合約、嚴格責任或侵權 (,包括過失或以其他方式) 在使用軟體時發生,即使建議發生這類損害的可能性也一致。

  7. 損害的限制和排除。 如果您有任何基礎可以復原損害,儘管上述免責聲明的擔保,您可以從 MICROSOFT 及其供應商復原,僅直接損害至美國。00. 您無法復原任何其他損害,包括衍生性損害、利潤損失、特殊損害、間接損害或意外損害。 此限制適用於 (i) 與軟體、服務、內容 (相關的任何專案,包括第三方因特網網站上的程式代碼) 或第三方應用程式;和 (ii) 違反合約、擔保、保證或條件的宣告;嚴格責任、過失或其他侵權行為;或任何其他宣告;在適用法律所允許範圍內的每一個案例中。 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. 如果您是 (,或是企業的主要業務位置位於 美國) ,則適用本節。 If you and Microsoft have a dispute, you and Microsoft agree to try for 60 days to resolve it informally. 如果您和 Microsoft 無法,則您和 Microsoft 同意根據美國聯邦仲裁法 (“FAA”) ,在美國仲裁協會之前系結個別仲裁,而不是在陪審團或陪審團的前面進行訴訟。 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. 法律和場地。 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.