TroubleShootingScript araç takımına (TSS) giriş

Bu makale, TroubleShootingScript (TSS) araç takımını tanıtır ve sık sorulan soruların yanıtlarını sağlar.

Şunlar için geçerlidir: Windows Server ve Windows İstemcisi'nin desteklenen sürümleri

TSS araç takımı, PowerShell tabanlı araçlar ile veri toplama ve tanılama için bir çerçeve içerir. Araç takımı, veri toplamayı basitleştirmeyi ve vakaların verimli ve güvenli bir şekilde çözülmesine yardımcı olmayı amaçlar.

Araç takımı, tümü Microsoft tarafından imzalanan çeşitli PowerShell betikleri ve yürütülebilir dosyaları içerir. Seçili anahtarlara bağlı olarak, TSS istenen günlükleri toplamak için bir veya daha fazla betik ve yürütülebilir dosya kullanır.

Araç takımını adresinden https://aka.ms/getTSSzip dosyası (TSS.zip) olarak indirebilirsiniz.

Önkoşullar

Araç takımının düzgün çalışması için bazı önkoşullar şunlardır:

  • TSS araç takımı, yerel sistemde yönetici ayrıcalıklarına sahip hesaplar tarafından yükseltilmiş bir PowerShell penceresinde çalıştırılmalıdır. TSS araç takımının Windows PowerShell Tümleşik Betik Ortamı'nda (ISE) çalıştırılması desteklenmez. Son kullanıcı lisans sözleşmesi (EULA) kabul edilmelidir. EULA kabul edildikten sonra, TSS araç takımı EULA'yı yeniden istemeyecektir.

  • PowerShell betiği yürütme ilkesi, yükseltilmiş bir PowerShell komut isteminden cmdlet Set-ExecutionPolicy -scope Process -ExecutionPolicy RemoteSigned -Force çalıştırılarak işlem düzeyinde olarak ayarlanmalıdırRemoteSigned.

    Not

    İşlem düzeyi değişiklikleri yalnızca geçerli PowerShell oturumunu etkiler.

TSS araç takımını başlatma

Senaryoya bağlı olarak farklı anahtarlarlaTSS.ps1başlatabilirsiniz. Fiil -Start varsayılan ve isteğe bağlı fiildir ve gerektiğinde tamamlayıcı bir fiil ile değiştirilebilir. Tamamlayıcı -Start fiiller , -StartDiag, -StartNoWaitve -CollectLogşeklindedir-StartAutoLogger.

Fiil Açıklama
-Start Fiil, -Start Windows için Olay İzleme (ETW) bileşen izlemelerini veya Windows Performans Kaydedicisi (WPR) gibi destek araçlarını başlatır.

Fiil [-Start] isteğe bağlıdır ancak tamamlayıcı -start seçeneklerle değiştirilebilir.
-StartAutoLogger Önyükleme zamanında bu günlükleri toplamak için öğesini kullanarak -StartAutoLogger değiştirin -Start.

Sorun yeniden üretildikten sonra izlemeleri durdurmak için cmdlet'iyle birlikte .\TSS.ps1 -Stop kullanın.
-StartDiag Bu anahtarın şu anda çok fazla kullanımı olmasa da, gelecekte birden çok senaryoda kullanılması amaçlanmalıdır. Bugünden itibaren DFSN ad alanının tanılamalarını almak gibi NET_DFSn diğer bağımsız değişkenlerle birleştirilebilir.
-StartNoWait Bu parametre, oturumu kapattığınızda bile izlemelerin etkin kalmasını sağlar.

Sorun yeniden üretildikten sonra izlemeleri durdurmak için cmdlet'iyle birlikte .\TSS.ps1 -Stop kullanın.
-CollectLog Bu parametre, bağımsız değişkeniyle DND_SetupReportbirlikte yaygın olarak kullanılır.

Örneğin:
.\TSS.ps1 -Collectlog DND_SetupReport

Veri toplamayı durdurduğunuzda izlemelerle ilgili günlükler de otomatik olarak toplanır.

TSS araç takımını kullanmak için söz dizimi

Parametre Açıklama
<placeholder> Yer tutucular için açılı köşeli ayraçlardaki (<>) dizenin yerine gerçek bir senaryo adı, izleme bileşeni, komut veya değer kullanılmalıdır.
[optional] Köşeli ayraç ([ ]) içindeki anahtar sözcük veya değer isteğe bağlıdır. Örneğin, [module:int] modülün ve aralığın isteğe bağlı olduğu anlamına gelir. Atlanırsa varsayılan değer kullanılır [<xx>:<yy>] .
| Bu parametre anlamına gelir 'OR'. Kullanılabilir seçeneklerden birini seçebilirsiniz.
: İki değer arasındaki ayırıcı karakter.

Cmdlet örnekleri

PowerShell cmdlet'i Açıklama
.\TSS.ps1 -PerfMon [General:10] Bu parametre ve= 10Intervalsaniye anlamına gelir.PerfMon CounterSetName= General Atlandığında [General:10] varsayılan değer devreye girecektir, bu nedenle -PerfMon ile aynı etkiye -PerfMon General -PerfIntervalSec 10sahiptir.
.\TSS.ps1 [-StopWaitTimeInSec <N>] Bu parametre bağımsız değişkenin -StopWaitTimeInSec isteğe bağlı olduğu anlamına gelir, ancak belirtilirse ="saniye sayısı" için <N> bir değer zorunludur.

Windows için Olay İzleme (ETW) izleme

ETW izleme PowerShell cmdlet'i Açıklama
Senaryo izlemesini etkinleştirin. .\TSS.ps1 -Scenario <ScenarioName> Desteklenen senaryo adları cmdlet'i TSS.ps1 -ListSupportedScenarioTrace kullanılarak listelenir.
Bileşen izlemelerini etkinleştirin. .\TSS.ps1 <-ComponentName> <-ComponentName> ... Desteklenen <-componentName> cmdlet'i TSS.ps1 -ListSupportedTrace kullanılarak listelenir.
Bekleme moduyla izlemeleri başlatın. .\TSS.ps1 -StartNoWait -Scenario <ScenarioName>

.\TSS.ps1 -Stop
İstem hemen geri döner, böylece oturumu kapatabilir veya gibi Shutdownbir cmdlet kullanabilirsiniz.

Cmdlet .\TSS.ps1 -Stop izlemeyi durdurur.

Not

Bileşenlerin ve/veya senaryoların tüm sağlayıcı GUID'lerini listelemek için cmdlet'ini -ListETWProviders kullanın. Örneğin:

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

Destek araçları ve komutları

Özel yakalamalar için ek araçlarla günlük toplamayı geliştirmek için destek araçlarını veya komutlarını (örneğin, ProcMon, ProcDump, netsh, Performans İzleyicisi (PerfMon), WPR veya Radar) başlatın.

PowerShell cmdlet'i Açıklama
-Fiddler Fiddler izlemesini toplayın. Fiddler'ın yüklenmesi gerekir.

Araçlar>Seçenekleri'ni ve HTTPS sekmesinde HTTPS Trafiğinin Şifresini Çöz'e tıklayarak trafik şifre çözme seçeneğini etkinleştirin.
-GPresult <Start|Stop|Both> , stopveya bothaşamasında startSysInternals Handle.exe çıkışını toplayın.
-Handle <Start|Stop|Both> , stopveya bothaşamasında startSysInternals Handle.exe çıkışını toplayın.
-LiveKD <Start|Stop|Both> SysInternals LiveKD'yi -ml (canlı çekirdek dökümü) başlatın.
<Start>: Döküm, yeniden oluşturmanın başlangıcında alınır.
<Stop>: döküm durakta alınır.
<Both>: Döküm hem başlatma hem de durdurma sırasında alınır.
-Netsh
1. -NetshOptions '<Option string>'
2. -NetshMaxSizeMB <Int>
3. -noPacket
Ağ paketi yakalamayı başlatın.

1. için Netshek seçenekler belirtin. Örneğin, 'capturetype=both captureMultilayer=yes provider=Microsoft-Windows-PrimaryNetworkIcon provider={<GUID>}'.
2. Megabayt (MB) cinsinden (örneğin, -NetshMaxSizeMB 4096) için Netsh en büyük günlük boyutu. Varsayılan değer 2048'dir.
3. Paketlerin yakalanmasını Netsh önleyin (yalnızca içindeki ScenarioName ETW izlemeleri yakalanır).
-NetshScenario
1. -NetshOptions '<Option string>'
2. -NetshMaxSizeMB <Int>
3. -noPacket
Senaryo izlemesini Netsh başlatın. Desteklenen <ScenarioName> cmdlet'i -ListSupportedNetshScenario kullanılarak listelenir.

1. için Netshek seçenekler belirtin. Örneğin, 'capturetype=both captureMultilayer=yes provider=Microsoft-Windows-PrimaryNetworkIcon provider={<GUID>}'.
2. MB cinsinden için Netsh en büyük günlük boyutu (örneğin, -NetshMaxSizeMB 4096). Varsayılan değer 2048'dir.
3. Paketlerin yakalanmasını Netsh önleyin (yalnızca senaryo adındaki ETW izlemeleri yakalanır).
-PerfMon <CounterSetName> [-PerfIntervalSec N] [-PerfMonMaxMB <N>] [-PerfMonCNF <[[hh:]mm:]ss>]
1. -PerfIntervalSec <Interval in sec>
2. -PerfMonMaxMB <N>
3. -PerfMonCNF <[[hh:]mm:]ss>
Günlükleri Performans İzleyicisi başlatın. <CounterSetName> cmdlet'i -ListSupportedPerfCounter kullanılarak listelenebilir.

1. Günlük aralığını PerfMon ayarlayın (varsayılan değer 10 saniyedir).
2. MB cinsinden en büyük Perfmon günlük boyutu için bir int değeri belirtin (varsayılan değer 2048'dir).
3. Belirtilen süre geçtiğinde veya maksimum boyutu <PerfMonMaxMB> aşıldığında yeni bir dosya oluşturun.
-PerfMonLong <CounterSetName> [-PerfLongIntervalMin N] [-PerfMonMaxMB <N>] [-PerfMonCNF <[[hh:]mm:]ss>]
1. -PerfLongIntervalMin <Interval in min>
uzun bir aralıkla Performans İzleyicisi.

1. Günlük aralığını PerfMonLong ayarlayın (varsayılan değer 10 dakikadır).
-PktMon Paket izleme verilerini toplayın (Windows Server 2019, Windows 10, sürüm 1809 ve sonraki sürümlerde). PktMon:Drop yalnızca bırakılan paketleri toplar.
-PoolMon <Start|Stop|Both> , stopveya bothüzerinde starttoplayınPoolMon.
-ProcDump <PID[]|ProcessName.exe[]|ServiceName[]>
1. -ProcDumpOption<Start|Stop|Both>-ProcDumpInterval <N>:<Interval in sec>
2. -ProcDumpInterval <N>:<Interval in sec>
3. -ProcDumpAppCrash
SysInternalsProcDump.exekullanarak tek bir öğenin veya virgülle ayrılmış öğe listesinin kullanıcı dökümlerini yakalayın . Varsayılan olarak, döküm yeniden oluşturma ve durdurma işleminin başlangıcında alınır. Uzantıyla (lar.exe) girinProcessName.

1. Start: döküm repro başında alınır.
Stop: döküm durakta alınır.
Both (varsayılan): döküm hem başlatma hem de durdurma sırasında alınır.
2. Dökümlerin tekrar tekrar yakalanması gerektiğinde bu seçeneği kullanın.
N: döküm sayısı
Int: saniye cinsinden aralık
Varsayılan değer 3:10'dur.
3. Bu anahtar, işlem işlenmeyen bir özel durumla karşılaştığında tam döküm yazan öğesini etkinleştirir ProcDump -ma -e.
-ProcMon
1. -ProcmonAltitude <N>
2. -ProcmonPath <folder path to Procmon.exe>
3. -ProcmonFilter <filter-file.pmc>
SysInternals Procmon.exebaşlatın.

1. için ProcmonAltitude bir dize değeri belirtin (varsayılan değer 385200'dir). Filtre sürücüsü rakımlarını göstermek için kullanın fltmc instances . Şüpheli belirli sürücüden daha düşük bir sayı kullanın. 45100 değeri size neredeyse her şeyi gösterir.
2. Procmon.exe için bir yol belirtin (varsayılan olarak, TSS yerleşik Procmon kullanır).
3. \config klasöründe bulunan Procmon (örneğin, ProcmonConfiguration.pmc) için bir yapılandırma dosyası belirtin.
-PSR Sorunlar Adım Kaydedicisi'ni başlatın.
-Radar <PID[]|ProcessName[]|ServiceName[]> Sızıntı tanılama bilgilerini (rdrleakdiag.exe) toplayın.

Örneğin, -Radar AppIDSvc.
-RASdiag İzlemeyi toplayın. Netsh Ras tanılama kümesi izlemesi etkinleştirilir.
-SDP <SpecialityName[]>
1. -SkipSDPList "<xxx>","<yyy>"
2. <SpecialityName>
Belirtilen uzmanlık için Destek Tanılama Paketi 'ni (SDP) toplayın. ve SkipSDPListlistesinin SpecialityNames tamamı için cmdlet'ini .\tss -help kullanın.

SDP raporunu çalıştırırken ortamınızda kilitlenen SDP modülü adlarının virgülle ayrılmış listesini atlayın.
-SysMon SysInternals Sistem İzleyicisi (SysMon) günlüklerini toplayın (varsayılan olarak yapılandırma klasöründesysmonConfig.xml ).
-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>'
Zaman Yolculuğu Hata Ayıklamasını (TTD) (TTT/iDNA) varsayılan -Full modla başlatın. Uzantı, ProcessNametek bir öğe (PID/ad) veya virgülle ayrılmış öğe listesiyle ( .exe ler) girin.

Not:
Windows 10 öncesi alt düzey işletim sistemi, sürüm 1703 içinTSS_TTD.zip paketi gerekir.

1. tttracer.exe (PartnerTTD) içeren klasör yolunu belirtin. Genellikle, bu anahtar yalnızca belirli bir yolu zorlamak istiyorsanız gereklidir.
2. Full = -dumpfull (=default)
Ring = halka arabellek modu
onLaunch = -onLaunch (TSS_TTD gerektirir)
3. En büyük günlük dosyası boyutu. İşlem öğesine bağlıdır -TTDMode. Full maksimum boyuta ulaşıldığında durdurulur ve Ring halka arabelleğindeki boyut üst sınırını korur.
4. TTD (TTT/iDNA) için ek seçenekler eklemek için bu seçeneği kullanın.
-Video Video yakalamayı başlatın (yüklü olması için .NET 3.5 gerekir).
-WFPdiag komutuyla netsh Wfp capture izlemeleri toplayın.
-WireShark WireShark'ı başlatın. Aşağıdaki parametreler tss_config.cfg dosyası aracılığıyla yapılandırılabilir.

1. WS_IF: için -ikullanılır. Arabirim numarasını belirtin (örneğin, _WS_IF=1).
2. WS_Filter: için -fkullanılır. Arabirimin filtresini (örneğin, _WS_Filter="port 443").
3. WS_Snaplen: için -skullanılır. Her çerçeve için veri miktarını sınırlayın. Bu parametre daha iyi performansa sahiptir ve yüksek yük durumları için yararlıdır (örneğin, _WS_Snaplen=128).
4. WS_TraceBufferSizeInMB: için -b FileSize kullanılır (1024 ile çarpılır). Megabayt sayısından sonraki dosyaya geçin. (örneğin, _WS_TraceBufferSizeInMB=512, default=512 MB)
5. WS_PurgeNrFilesToKeep: için -b fileskullanılır. dosya sayısından sonra değiştirin. (örneğin, _WS_PurgeNrFilesToKeep=20)
6. WS_Options: için -i diğer seçenekler (örneğin, _WS_Options="-P").

Örneğin:
WireShark'ı 15 ve 11 arabirimlerinde toplamak için, TSS bir arabirim numarası isteyince girin: 15 -i 11.

Wireshark varsayılan olarak başlatılır 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 profil izlemesi başlatın. <WPRprofile>, biridirGeneralCPUVSOD_Leak||Device|SQL||MemoryGraphic||VSOD_CPUXaml|Wait|Storage|||Registry|BootGeneralNetwork.

1. Sembol dosyaları (PDB dosyaları) oluşturma işlemini atlayın.
2. WPR.exeseçeneklerini belirtin. Örneğin, -WPROptions '-onoffproblemdescription "test description"'.

1. Örnek:
.\TSS.ps1 -StartAutoLogger -WPR BootGeneral -WPROptions '-addboot CPU've CPU profilleriyle General WPR önyükleme izlemelerini yakalar.

2. Örnek:
.\TSS.ps1 -WPR General -WPROptions '-Start CPU -start Network -start Minifilter' profilleri (General, CPU, Networkve Minifilter) birleştirir.
-Xperf <Profile>
1. -XperfMaxFileMB <Size>
2. -XperfTag <Pool Tag>
3. -XperfPIDs <PID>
4. -XperfOptions <Option string>
Xperf'i başlatın. <Profile>, biridirGeneralDisk|||Registry||SBSLPoolNPPSBSLboot|SMB2|Pool|NetworkMemoryLeak||CPU|.

1. En büyük günlük boyutunu MB olarak belirtin (varsayılan değer 2048 MB'tır). SBSL* senaryoları için varsayılan değer 16384'tür (ADS_/NET_SBSL için aynıdır).
2. Günlüğe kaydedileceğini belirtin PoolTag . Bu parametre veya PoolNPP profiliyle Pool (örneğin, -Xperf Pool -XperfTag TcpE+AleE+AfdE+AfdX) kullanılır.
3. belirtin ProcessID. Bu parametre profille birlikte Leak kullanılır (örneğin, -Xperf Leak -XperfPIDs <PID>).
4. için Xperfdiğer seçenek dizelerini belirtin.
-xray Bilinen sorunlara karşı sistemi tanılamak için xray'i başlatın.

Aşağıdaki örnekte, aynı izleme sırasında birden çok destek aracının (komut) nasıl etkinleştir olduğu gösterilmektedir.

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

TSS seçeneklerindeki parametreler

Veri toplamayı denetlemek, geliştirmek veya basitleştirmek için TSS seçeneklerinde belirli parametreleri tanımlar.

Parametre Açıklama
-AcceptEula İlk başta sorma; komutunu çalıştırarak Yasal Uyarıyı kabul edin (yürütme için -RemoteRun kullanışlıdır).
-AddDescription <description> Yeniden oluşturma sorununun kısa bir açıklamasını ekleyin. Sonuçta elde edilen zip dosyasının adı böyle bir açıklama içerir.
-Assist Erişilebilirlik modu.
-BasicLog Tam temel günlüğü toplayın (mini temel günlük her zaman varsayılan olarak toplanır).
-CollectComponentLog ile -Scenariokullanın. Varsayılan olarak, bileşen toplama işlevleri izlemede -Scenario çağrılmıyor. Bu anahtar, bileşen toplama işlevlerinin çağrılmalarını sağlar.
-CollectDump Tüm izlemeleri durdurduktan sonra sistem dökümünü (memory.dmp) toplayın. -CollectDumpve -Stopile -Start kullanılabilir.
-CollectEventLog <Eventlog[]> Belirtilen olay günlüklerini toplayın. Olay günlüğü adı için yıldız (*) joker karakteri kullanılabilir.

Örneğin:
-CollectEventLog Security,*Cred*
gibi 'Microsoft-Windows-CertificateServicesClient-CredentialRoaming/Operational'eşleşen *Cred* güvenlik ve tüm olay günlüklerini toplayın.
-CommonTask <<POD>|Full|Mini> İzlemeyi başlatmadan önce ve durdurduktan sonra ortak görevleri çalıştırın.

<POD>: şu anda yalnızca "NET" kullanılabilir. İzlemeyi başlatmadan ve durdurmadan önce ek bilgi toplayın.
Full: tam temel günlük, izlemeyi durdurduktan sonra toplanır.
Mini: mini temel günlük, izlemeyi durdurduktan sonra toplanır.
-Crash ile yeniden oluşturmanın durdurulması sırasında veya ile -WaitEventkullanıldığında tüm olaylar sinyallendikten sonra sistem kilitlenmesini NotMyFault tetikleme.

Dikkat:
Bu anahtar bellek dökümünü zorlar (sistem yeniden başlatılır), bu nedenle açık dosyalar kaydedilmez.
-CustomETL Özel ETL izleme sağlayıcıları ekleyin. Örneğin, .\TSS.ps1 -WIN_CustomETL -CustomETL '{<GUID>}','Microsoft-Windows-PrimaryNetworkIcon' (tek tırnaklı '{GUID}' ve/veya 'Provider-Name'virgülle ayrılmış bir liste).
-DebugMode Geliştirici için hata ayıklama moduyla komutunu çalıştırın.
-VerboseMode TSS işlevlerini işlerken daha ayrıntılı veya bilgilendirici çıktı gösterin.
-Discard Aşamasında -Stopbir veri kümesini atmak için kullanılır. *Stop- veya *Collect- işlevler çalışmaz. xray ve psSDP atlanır.
-EnableCOMDebug COM hata ayıklama modunu açma modülü.
-ETLOptions<circular|newfile>:<ETLMaxSizeMB>:<ETLNumberToKeep>:<ETLFileMax> Komutlara logman geçirilen seçenekleri ayarlayın. için circular ETLMaxSizeMB varsayılan değer 1024'dür ve için newfile ETLMaxSizeMB varsayılan değer 512'dir.

-StartAutologger yalnızca destekler -ETLOptions circular:<ETLMaxSize>:<ETLNumberToKeep>:<ETLFileMax>, ancak ETLNumberToKeep beklenen şekilde yürütülmez.

Örnek.1:
-ETLOptions newfile:2048:5

Günlükleri 2048 MB boyutunda çalıştırın newfile . Yalnızca son beş *.etl dosyayı saklayın. Döngüsel mod için varsayılan ayar şeklindedir circular:1024ve yeni dosya modu için ise şeklindedir newfile:512:10.

2. Örnek:
-StartAutologger -ETLOptions circular:4096
Autologger itaat :<ETLNumberToKeep> etmez ve yalnızca modu döngüsel kabul eder.

Örnek 3:
-StartAutologger -ETLOptions circular:4096:10:3
Autologger itaat :<ETLNumberToKeep> etmez ve nesil sayısı autologger olarak yalnızca modu döngüsel ve "3" kabul eder.
-ETWlevel <Info|Warning|Error> Olay İzleme Düzeyini ayarlayın. Varsayılan değer 0xFF.
-EvtDaysBack <N> Olay günlüklerini yalnızca son N gün için dönüştürün. Varsayılan değer 30 gündür. Ayrıca SDP raporu için de geçerlidir.

Not:
Güvenlik olay günlükleri atlanır.
-ExternalScript <path to external PS file> İzlemeyi başlatmadan önce belirtilen PowerShell betiğini çalıştırın.
-LogFolderPath <Drive:\path to log folder> Varsayılan konum (C:\MS_DATA) yerine sonuçta elde edilen çıkış verileri için farklı bir günlük klasörü yolu kullanın. C: sürücüsünde boş disk alanı az olduğunda kullanışlıdır.
-MaxEvents <N> parametresi için '-WaitEvent Evt:..'bağımsız değişken olarak, aynı olay kimliğine sahip son N olay sayısını araştırır (varsayılan değer 1'dir).
-Mini Yalnızca en az veri toplayın. , , noSDP, noVideo, noXraynoZipve noBasicLogatlayınnoPSR.
-Mode <Basic|Medium|Advanced|Full|Verbose|VerboseEx|Hang|Restart
|Swarm|Kube|GetFarmdata|Permission|traceMS>
Veri toplama için , Medium, Advanced, Fullveya Verbose(Ex) modunda betikleri Basicçalıştırın. Restart , ilişkili hizmeti yeniden başlatır.
-RemoteRun TSS uzak bir konakta yürütülürken, örneğin PsExec aracılığıyla, Azure Seri Konsolu'nda veya PowerShell uzaktan iletişimiyle kullanın. Bu parametre PSR'yi, video kaydını, TssClock'u başlatmayı ve Explorer'ı son sonuçlarla açmayı engeller. Böyle bir durumda, seçeneğini de göz önünde bulundurun -AcceptEula.
-StartNoWait Beklemeyin, istem hemen geri döner. Bu parametre, kullanıcının oturumunu kapatması gereken senaryo için kullanışlıdır.
-WaitEvent Belirtilen olayı veya durdurma tetikleyicisini izleme; işaretlenirse izlemeler otomatik olarak durdurulur.

Otomatik durdurmayı tetikleyen çok çeşitli seçenekler vardır. Kullanımı görmek için komutunu çalıştırın .\TSS.ps1 -Find Monitoring .
-Update
1. -UpdMode<Online|Lite>
TSS paketini güncelleştirin. ile -UpdMode Online|Litebirlikte kullanılabilir.

Online varsayılandır ve Lite lite sürümüdür Upd .
-Help
1. Common
2. ALL
3. Monitoring
4. Config
5. Keyword
Çeşitli senaryolarda yardım iletileri sağlayın.

1. Genel genel yardım iletisi.
2. Tüm kullanılabilir seçenekler.
3. İzleme ve uzak özellikler için yardım iletilerini gösterin.
4. Tüm yapılandırma parametreleriyle ilgili yardım.
5. Herhangi bir anahtar sözcük girebilirsiniz ve bu anahtar sözcükle ilgili yardım bilgileri gösterilir.
-Status Varsa, çalışan izlemenin durumunu gösterin.

Yardımcı betikler ve araçlar dahil

Yardımcı betik ve araç Açıklama
\scripts\tss_EventCreate.ps1 Olay kimlikleriyle olay günlüğü dosyalarında bir olay günlüğü girdisi oluşturun.
\scripts\tss_SMB_Fix-SmbBindings.ps1 Bozuk SMB bağlamalarını (LanmanServer, LanmanWorkstation veya NetBT) düzeltmek için kullanışlıdır. Ayrıca -Collect NET_SMBsrvBindingbkz. .
\BINx64\kdbgctrl.exe Çekirdek kilitlenme bilgi dökümü türünü Full|Kernelayarlamak için anahtarını -sd <dump type> kullanın. Örneğin, kdbgctrl -sd Full.
\BINx64\NTttcp.exe Performans testleri. Daha fazla bilgi için bkz . NTTTCP kullanarak VM ağ aktarım hızını test edin.
\BINx64\latte.exe Gecikme testleri. Daha fazla bilgi için bkz . Azure VM'leri arasındaki ağ gecikme süresini test edin.
\BINx64\notmyfaultc.exe Bellek dökümünü zorlama. TSS komut satırı içeriyorsa -Crashbkz. NotMyFault v4.21.

Beklenmeyen PowerShell hatalarını giderme

  1. Bir hatadan sonra bu cmdlet'i çalıştırın:

    .\TSS.ps1 -Stop -noBasiclog -noXray
    
  2. Açılan yükseltilmiş PowerShell penceresini kapatın ve yeni bir yükseltilmiş PowerShell penceresi başlatın.

  3. PowerShell betiklerinin sisteminizde uygun ExecutionPolicyile çalışmasına izin verin.

  4. Çalışan betiğin devre dışı bırakıldığını belirten bir hatayla karşılaşırsanız aşağıdaki yöntemleri deneyin.

Yöntem 1

  1. Aşağıdaki cmdlet'i çalıştırın:

    Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -force -Scope Process
    
  2. Cmdlet'inde Get-ExecutionPolicy -List daha yüksek öncelikli ayarların ExecutionPolicy bu betiğin yürütülmesini engellediğini doğrulayın.

  3. Cmdlet'i .\TSS.ps1 <Desired Parameters> yeniden çalıştırın.

Yöntem 2 (alternatif)

Betikler tarafından MachinePolicyengellenirse, yükseltilmiş bir PowerShell penceresinde aşağıdaki cmdlet'leri çalıştırın:

  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
    

Yöntem 3 (alternatif)

Betikler tarafından UserPolicyengellenirse, yükseltilmiş bir PowerShell penceresinde aşağıdaki cmdlet'leri çalıştırın:

  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
    

Not

Yöntem 2 yalnızca İlke MachinePolicy - RemoteSignediçin geçici bir çözümdür. seçeneğini de görüyorsanızUserPolicy - RemoteSigned, etki alanı yöneticisinden geçici bir grup ilkesi Nesnesi (GPO) muafiyeti isteyin.

Nadir durumlarda cmdlet'ini -ExecutionPolicy Bypass deneyebilirsiniz.

Kuruluşunuz GPO PowerShell kısıtlanmış dil modunu ()System.Management.Automation.EngineIntrinsics.SessionState.LanguageMode -ne 'FullLanguage' zorlarsa, etki alanı yöneticisinden geçici bir GPO muafiyeti isteyin.

Sık sorulan sorular (SSS)

  • S1: TSS betiği sistemimin herhangi bir kurulumunu veya yapılandırmasını değiştirir mi?

    A1: Hayır, ancak bazı senaryolarda hata ayıklama günlüğünü etkinleştirmek için bir kayıt defteri ayarı gereklidir. Betik, veri toplamanın başlangıcında gerekli anahtarı ayarlar ve anahtarı veri toplamanın sonundaki varsayılan değere döndürür. Ayrıca, sorunu günlüklerden gözlemlemek için veri koleksiyonunun başındaki bazı önbellekleri (örneğin, ARP önbelleği veya ad çözümleme önbelleği) silebilir.

  • S2: TSS araç takımı sunucuya ek yük bindirdi mi?

    Y2: TSS araç takımı tarafından başlatılan bazı günlükler (örneğin, ağ yakalama, ETW izleme koleksiyonu vb.) sisteme küçük bir yük bindirebilir. Yük genellikle yoksayılabilir düzeylerdedir. TSS araç takımını başlattıktan sonra yüksek CPU, bellek veya disk kullanımı gördüğünüzde destek temsilcinize başvurun.

  • S3: TSS araç takımı çalışırken sorunu neden yeniden oluşturamıyoruz?

    Y3: TSS araç takımı başlangıçta önbelleğe alınan tüm bilgileri silebilir. Ayrıca ağ yakalamayı, Ağ Arabirimi Kartı (NIC) varsayılan davranışlarını değiştiren, rastgele bir modda başlatır. Bu değişiklikler sorunu etkileyebilir ve sorunlar kaybolabilir. Özellikle belirli zamanlama sorunları için, TSS araç takımının veri toplaması nedeniyle sorunlar kaybolur. Veri toplama işlemi günlüğe kaydetmeye başlar ve bu da sorunu dolaylı olarak etkileyebilir ve durumu değiştirebilir.

  • S4: TSS araç takımı neden uzun süre yanıt vermiyor?

    A4: Bazı durumlarda, TSS araç takımı tarafından çalıştırılan işletim sisteminin yerleşik komutları yanıt vermeyebilir veya tamamlanması uzun sürebilir. Bu sorunla karşılaşırsanız destek temsilcinize başvurun.

  • S5: TSS araç takımını uzun süre çalıştırdığımda disk alanı veya başka bir şey hakkında endişelenmem gerekiyor mu?

    Y5: Tüm TSS izlemeleri kademe arabellekleriyle çalışacak şekilde yapılandırılır, böylece gerekirse araç takımını uzun süre çalıştırabilirsiniz. TSS araç takımı, veri toplama işleminin başındaki disk alanını da hesaplar ve yeterli disk alanı yoksa çıkabilir. TSS araç takımını başlattıktan sonra yüksek disk kullanımı görüyorsanız veya araç takımının disk kullanımıyla ilgili başka endişeleriniz varsa destek temsilcinize başvurun.

  • S6: .\TSS.ps1 betiğini çalıştırırken aşağıdaki güvenlik uyarısını alırsam ne yapmalıyım?

    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: Nadir durumlarda bu güvenlik uyarısı alabilirsiniz. cmdlet'ini PS C:\> Unblock-File -Path C:\TSS\TSS.ps1kullanarak betiğin engellemesini kaldırabilirsiniz. Bu betik, cmdlet'ini Get-ChildItem -Recurse -Path C:\TSS\*.ps* | Unblock-File -Confirm:$falsekullanarak diğer tüm modüllerin engelini kaldırır.

Son Kullanıcı Lisans Sözleşmesi (EULA)

MICROSOFT YAZILIM LİSANS KOŞULLARI'nı görüntülemek için aşağıya tıklayın.

Microsoft Tanılama Betikleri ve Yardımcı Programları

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") bu lisansta belirtilen hüküm ve kısıtlamalara tabi olarak, Microsoft'un bir veya daha fazla Microsoft ürünüyle ilgili sorunları gidermesine yardımcı olmak amacıyla, bu lisans kapsamında sağlanan betiği veya yardımcı programı ("Yazılım") kullanmak ve yeniden oluşturmak için size ("Müşteri" veya "siz") münhasır olmayan, atanamaz, tam olarak ödenmiş bir lisans verir. Yazılım lisansının diğer Microsoft teknolojilerine (ürün veya hizmetler gibi) yönelik herhangi bir hak içermemesi şartıyla. "Kullan", Yazılım'ı kopyalamak, yüklemek, yürütmek, erişmek, görüntülemek, çalıştırmak veya başka bir şekilde etkileşim kurmak anlamına gelir.

    Yazılımı veya herhangi bir kullanımı dağıtım, ağ erişimi veya başka bir şekilde alt lisansa ek olarak kullanamazsınız. Microsoft, ima, tahmin veya başka bir şekilde burada açıkça verilmeyen diğer tüm hakları saklı tutar. Yazılıma dahil edilebilecek belirli açık kaynak bileşenlerinin kullanımını yöneten üçüncü taraf lisans koşulları dışında yazılım için kaynak kodu tersine mühendislik gerçekleştiremez, koda koda dönüştürmek veya başka bir şekilde türetme girişiminde bulunamayın ya da Yazılım'da Microsoft'un veya tedarikçilerinin bildirimlerini kaldıramayın, simge durumuna küçültün, engelleyin veya değiştirin. Ne siz ne de temsilcileriniz burada sağlanan Yazılımı kullanamazsınız: (i) yasa, düzenleme, kamu düzeni veya kararname ile yasaklanan bir şekilde; (ii) başkalarının haklarını ihlal etmek; (iii) herhangi bir hizmete, cihaza, verilere, hesaba veya ağa yetkisiz erişim elde etmeye veya kesintiye uğratmaya çalışmak; (iv) istenmeyen posta veya kötü amaçlı yazılım dağıtmak için; (v) Microsoft'un BT sistemlerine zarar verebilecek veya başka birinin bunları kullanmasını engelleyebilecek şekilde; (vi) Yazılımın kullanımının herhangi bir kişinin ölümüne veya ciddi bedensel yaralanmasına ya da fiziksel ya da çevresel hasara yol açabileceği herhangi bir uygulamada veya durumda; veya (vii) yukarıdakilerden herhangi birini yapmasını sağlamak, teşvik etmek veya etkinleştirmek için.

  2. VERİ. Müşteri, Yazılımı kullanarak Microsoft ile paylaşmayı seçebileceği tüm veri haklarına sahip olur. Veri toplama ve kullanma hakkında daha fazla bilgiyi yardım belgelerinde ve gizlilik bildiriminde bulabilirsiniz https://aka.ms/privacy. Yazılımı kullanımınız, bu uygulamalara onay olarak çalışır.

  3. FEEDBACK. Yazılım hakkında Microsoft'a geri bildirimde bulunursanız, Microsoft'a geri bildiriminizi herhangi bir şekilde ve herhangi bir amaçla kullanma, paylaşma ve ticarileştirme hakkını ücretsiz olarak vermiş olursunuz. Microsoft'un yazılımı veya belgelerini Microsoft'un bu tür yazılım veya belgelerdeki geri bildiriminiz de dahil olmak üzere Microsoft'un üçüncü taraflara lisansını zorunlu kılacak bir lisansa tabi hiçbir geri bildirim sağlamazsınız.

  4. EXPORT RESTRICTIONS. Müşteri, Yazılım için geçerli olan ve hedeflere, son kullanıcılara ve son kullanıma yönelik kısıtlamaları içeren tüm yurtiçi ve uluslararası ihracat yasalarına ve düzenlemelerine uymalıdır. For further information on export restrictions, visit https://aka.ms/exporting.

  5. BEYANLAR VE GARANTİLER. Müşteri, tüm verilerin teslimi ve kullanımı dahil olmak üzere bu sözleşme kapsamındaki tüm geçerli yasalara uyacaktır. Bir varlık adına bu koşulları kabul eden müşteri veya tasarım sahibi, (i) bu sözleşme kapsamındaki yükümlülüklerini girmek ve yerine getirmek için tam yetkiye ve yetkiye sahip olduğunu, (ii) bağlı kuruluşlarını veya kuruluşlarını bu sözleşmenin koşullarına bağlamak için tam yetkiye ve yetkiye sahip olduğunu ve (iii) herhangi bir kaynak kodunu tabi olacak şekilde sağlamadan önce diğer tarafın iznini güvence altına alacaktır. diğer tarafın fikri mülkiyetini başka bir lisans koşullarına tabi kılır veya diğer tarafın kaynak kodunu herhangi bir teknolojiye dağıtmasını gerektirir.

  6. GARANTİ REDDİ. YAZıLıM, SATıLABILIRLIK, BELIRLI BIR AMACA UYGUNLUK VE NONINFRINGEMENT GARANTILERI DAHIL ANCAK BUNLARLA SıNıRLı OLMAMAK KAYDıYLA, AÇıK VEYA ZıMNI HERHANGI BIR GARANTI OLMAKSıZıN "OLDUĞU GIBI" SAĞLANıR. HIÇBIR DURUMDA, MICROSOFT VEYA LISANS VERENLERI HERHANGI BIR DOĞRUDAN, DOLAYLı, ARıZI, ÖZEL, ÖRNEK VEYA SONUÇTAKI ZARARLARDAN (IKAME MAL VEYA HIZMETLERIN TEDARIKI DAHIL, ANCAK BUNLARLA SıNıRLı OLMAMAK ÜZERE) SORUMLU TUTULAMAZ; KULLANıM, VERI VEYA KAR KAYBı; VEYA İŞ KESINTISI) ANCAK, SÖZ KONUSU HASAR OLASıLıĞı BILDIRILSE BILE, YAZıLıMıN KULLANıMıNDAN HERHANGI BIR ŞEKILDE KAYNAKLANAN SÖZLEŞME, KATı SORUMLULUK VEYA HAKSıZLıĞA (IHMAL VEYA BAŞKA BIR ŞEKILDE) ILIŞKIN HERHANGI BIR SORUMLULUK TEORISINE NEDEN OLDU VE BU TEORIYE BAĞLı OLARAK.

  7. ZARARLARIN SINIRLANMASI VE HARİÇ TUTULMASI. YUKARıDAKI GARANTI REDDINE RAĞMEN ZARARLARı KURTARMAK IÇIN HERHANGI BIR TEMELE SAHIPSENIZ, MICROSOFT'TAN VE TEDARIKÇILERINDEN YALNıZCA ABD'YE KADAR DOĞRUDAN ZARARLARı KURTARABILIRSINIZ. 00. NETICEDE OLUŞAN, KAR KAYBı, ÖZEL, DOLAYLı VEYA ARıZI ZARARLAR DA DAHIL OLMAK ÜZERE DIĞER ZARARLARı KURTARAMAZSıNıZ. Bu sınırlama (i) Üçüncü taraf İnternet sitelerindeki Yazılım, hizmetler, içerik (kod dahil) veya üçüncü taraf uygulamalarıyla ilgili her şey için geçerlidir; ve (ii) sözleşme, garanti, garanti veya koşul ihlali iddiaları; katı sorumluluk, ihmal veya diğer haksızlar; veya başka bir talep; her durumda geçerli yasaların izin verdiği ölçüde. 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. Bu bölüm, Birleşik Devletler yaşıyorsanız (veya bir işletmeyse asıl iş yeriniz buradaysa) geçerlidir. If you and Microsoft have a dispute, you and Microsoft agree to try for 60 days to resolve it informally. Siz ve Microsoft bunu yapamazsanız, siz ve Microsoft Federal Tahkim Yasası ("FAA") kapsamında Amerikan Tahkim Birliği'nden önce bireysel tahkimi bağlamayı ve bir hakim veya jüri önünde mahkemede dava açmayabileceğinizi kabul edersiniz. 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. HUKUK VE MEKAN. 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.