Aracılığıyla paylaş


ProcDump v11.0

Mark Russinovich ve Andrew Richards tarafından

Yayımlanma Tarihi: 03.11.2022

İndir ProcDump'ıindirin (714 KB)

Linux için ProcDump'ı indirin (GitHub)
Mac için ProcDump'ı indirin (GitHub)

ZoomIt ile oluşturuldu

Giriş

ProcDump, birincil amacı bir uygulamayı CPU ani artışları için izlemek ve bir yöneticinin veya geliştiricinin ani artışın nedenini belirlemek için kullanabileceği ani artış sırasında kilitlenme dökümleri oluşturmak olan bir komut satırı yardımcı programıdır. ProcDump ayrıca asılı pencere izleme (Windows ve Görev Yöneticisi'nin kullandığı pencerenin aynı tanımını kullanarak), işlenmeyen özel durum izlemesini içerir ve sistem performans sayaçlarının değerlerine göre dökümler oluşturabilir. Ayrıca, diğer betiklere ekleyebileceğiniz genel bir işlem dökümü yardımcı programı olarak da kullanılabilir.

ProcDump kullanma

Kullanımı Yakala:

procdump.exe [-mm] [-ma] [-mt] [-mp] [-mc <Mask>] [-md <Callback_DLL>] [-mk]
            [-n <Count>]
            [-s <Seconds>]
            [-c|-cl <CPU_Usage> [-u]]
            [-m|-ml <Commit_Usage>]
            [-p|-pl <Counter> <Threshold>]
            [-h]
            [-e [1] [-g] [-b] [-ld] [-ud] [-ct] [-et]]
            [-l]
            [-t]
            [-f  <Include_Filter>, ...]
            [-fx <Exclude_Filter>, ...]
            [-dc <Comment>]
            [-o]
            [-r [1..5] [-a]]
            [-at <Timeout>]
            [-wer]
            [-64]
            {
                {{[-w] <Process_Name> | <Service_Name> | <PID>} [<Dump_File> | <Dump_Folder>]}
            |
                {-x <Dump_Folder> <Image_File> [Argument, ...]}
            }

Yükleme Kullanımı:

procdump.exe -i [Dump_Folder]
            [-mm] [-ma] [-mt] [-mp] [-mc <Mask>] [-md <Callback_DLL>] [-mk]
            [-r]
            [-at <Timeout>]
            [-k]
            [-wer]

Kullanım Kaldırma:

procdump.exe -u

Döküm Türleri:

Döküm Türü Açıklama
-Mm 'Mini' döküm dosyası yazın. (varsayılan)
- Doğrudan ve dolaylı olarak başvuruldu belleği (yığınlar ve başvuracakları öğe) içerir.
- Tüm meta verileri (İşlem, İş Parçacığı, Modül, Tanıtıcı, Adres Alanı vb.) içerir.
-ma 'Tam' döküm dosyası yazın.
- Tüm belleği (Görüntü, Eşlenmiş ve Özel) içerir.
- Tüm meta verileri (İşlem, İş Parçacığı, Modül, Tanıtıcı, Adres Alanı vb.) içerir.
-Mt 'Önceliklendirme' döküm dosyası yazın.
- Doğrudan başvuruldu belleği (yığınlar) içerir.
- Sınırlı meta verileri (İşlem, İş Parçacığı, Modül ve Tanıtıcı) içerir.
- Hassas bilgilerin kaldırılmasına çalışılır ancak garanti edilmez.
-Mp 'MiniPlus' döküm dosyası yazın.
- Tüm Özel belleği ve tüm Okuma/Yazma Görüntüsünü veya Eşlenmiş belleği içerir.
- Tüm meta verileri (İşlem, İş Parçacığı, Modül, Tanıtıcı, Adres Alanı vb.) içerir.
- Boyutu en aza indirmek için 512 MB üzerindeki en büyük Özel bellek alanı hariç tutulur.
  Bellek alanı, aynı boyutlu bellek ayırmalarının toplamı olarak tanımlanır.
  Döküm tam döküm kadar ayrıntılıdır, ancak boyutu %10-75'tir.
- Not: Hata ayıklama sınırlamaları nedeniyle CLR işlemleri Tam (-ma) olarak atılır.
-Mc 'Özel' döküm dosyası yazın.
- Belirtilen MINIDUMP_TYPE maske (Onaltılık) tarafından tanımlanan belleği ve meta verileri içerir.
-md Bir 'Geri Çağırma' döküm dosyası yazın.
- Belirtilen DLL'nin MiniDumpWriteDump adlı MiniDumpCallbackRoutine geri çağırma yordamı tarafından tanımlanan belleği içerir.
- Tüm meta verileri (İşlem, İş Parçacığı, Modül, Tanıtıcı, Adres Alanı vb.) içerir.
-Mk Ayrıca bir 'Çekirdek' döküm dosyası da yazın.
- İşlemdeki iş parçacıklarının çekirdek yığınlarını içerir.
- İşletim sistemi, bir kopya () kullanırken çekirdek dökümünü (-mk-r) desteklemez.
- Birden çok döküm boyutu kullanılırken, her döküm boyutu için bir çekirdek dökümü alınır.

Koşul -ları:

Koşul Açıklama
-a Kesintiden kaçının. gerektirir -r. Tetikleyici, eşzamanlı döküm sınırının aşılması nedeniyle hedefin uzun bir süre askıya alınmasına neden olacaksa, tetikleyici atlanır.
-da Zaman aşımında kesintilerden kaçının. Tetikleyicinin koleksiyonunu saniyeler olarak N iptal edin.
-b Hata ayıklama kesme noktalarını özel durum olarak değerlendirin (aksi takdirde bunları yoksayın).
-c İşlemin dökümünün oluşturulacağı CPU eşiği.
-Cl İşlemin dökümünün oluşturulacağı CPU eşiği.
-Dc Belirtilen dizeyi oluşturulan Döküm Açıklamasına ekleyin.
-e İşlem işlenmeyen bir özel durumla karşılaştığında bir döküm yazın.
1 İlk şans özel durumlarında döküm oluşturmak için öğesini ekleyin.
DLL (modül) yüklendiğinde döküm oluşturmak için ekleyin -ld (filtreleme uygulanır).
DLL (modül) kaldırıldığında döküm oluşturmak için ekleyin -ud (filtreleme uygulanır).
İş parçacığı oluşturulduğunda döküm oluşturmak için ekleyin -ct .
İş parçacığı çıktığında döküm oluşturmak için ekleyin -et .
-f Özel durumların içeriğine filtre uygulayın (dahil edin), DLL yükleme/kaldırma sırasında günlüğe kaydetme ve dosya adında hata ayıklama. Joker karakterler (*) desteklenir.
-Fx Özel durumların içeriğine filtre uygulayın (hariç tutun), DLL yükleme/kaldırma sırasında günlüğe kaydetme ve dosya adında hata ayıklama. Joker karakterler (*) desteklenir.
-g Yönetilen bir işlemde yerel hata ayıklayıcı olarak çalıştırın (birlikte çalışma yok).
-h İşlemin askıda kalmış bir penceresi varsa yazma dökümü (en az 5 saniye boyunca pencere iletilerine yanıt vermez).
-k Kopyalama-r () sonrasında veya döküm toplama işleminin sonunda işlemi sonlandırın.
-l İşlemin hata ayıklama günlüğünü görüntüleyin.
-m Döküm oluşturulacak MB cinsinden bellek işleme eşiği.
-Ml Bellek işleme belirtilen MB değerinin altına düştüğünde tetikleme.
-n Çıkmadan önce yazılması gereken döküm sayısı.
-o Varolan döküm dosyasının üzerine yaz.
-p Performans Sayacı belirtilen Eşikte olduğunda veya aştığında tetikleme. Bazı Sayaçlar ve/veya Örnek Adları büyük/küçük harfe duyarlı olabilir.
-Pl Performans Sayacı belirtilen Eşiğin altına düştüğünde tetikleme.
-r Kopya kullanarak döküm. Eşzamanlı sınır isteğe bağlıdır (varsayılan 1, en fazla 5). İşletim sistemi, bir kopya ( kullanırken) çekirdek dökümünü (-mk-r) desteklemez. DİkKAT: Yüksek eşzamanlılık değeri sistem performansını etkileyebilir.
- Windows 7: Yansıma kullanır. İşletim sistemi desteklemez -e.
- Windows 8.0: Yansıma kullanır. İşletim sistemi desteklemez -e.
- Windows 8.1+: PSS kullanır. Tüm tetikleyici türleri desteklenir.
-s Döküm yazilmeden önce ardışık saniye (varsayılan değer 10'dur).
-t İşlem sonlandırıldığında bir döküm yazın.
-u CPU kullanımını tek bir çekirdekle (ile -ckullanılır) göre değerlendirin.
-v YALNIZCA HATA AYıKLAMA: Ayrıntılı çıkış.
-w Çalışmıyorsa belirtilen işlemin başlatılmasını bekleyin.
-Wer (en büyük) dökümü Windows Hata Bildirimi sıraya alın.
-x Belirtilen görüntüyü isteğe bağlı bağımsız değişkenlerle başlatın. Bu bir Mağaza Uygulaması veya Paketi ise ProcDump bir sonraki etkinleştirmede başlar (yalnızca).
-y GİzLİ: Uygulama etkinleştirmeyi depolayın.
-64 ProcDump varsayılan olarak 64 bit Windows üzerinde çalışırken 32 bit işlemin 32 bit dökümünü yakalar. Bu seçenek, 64 bit döküm oluşturmak için geçersiz kılar. Yalnızca WOW64 alt sistem hata ayıklaması için kullanın.

Lisans Sözleşmesi:

-accepteula Sysinternals lisans sözleşmesini otomatik olarak kabul etmek için komut satırı seçeneğini kullanın.

Otomatik Sonlandırma:

-cancel <Target Process PID>

Bu seçeneği kullanmak veya adıyla ProcDump-<PID> bir olay ayarlamak, ProcDump'ı düzgün bir şekilde sonlandırmak için Ctrl+C yazmakla aynıdır. Düzgün sonlandırma, yakalama etkinse işlemin sürdürülmesini sağlar. İptal işlemi, işlemi izleyen ALL ProcDump örnekleri için geçerlidir.

Dosyaadı:

Varsayılan döküm dosya adı: PROCESSNAME_YYMMDD_HHMMSS.dmp

Aşağıdaki değiştirmeler desteklenir:

Değiştirme Açıklama
PROCESSNAME İşlem Adı
PID Process ID
ÖZEL DURUM KODU Özel Durum Kodu
YYMMDD Yıl/Ay/Gün
HHMMSS Saat/Dakika/Saniye

Örnekler

  • "Not defteri" adlı işlemin mini dökümünü yazın (yalnızca bir eşleşme olabilir):

    C:\>procdump notepad
    
  • PID '4572' ile bir işlemin tam dökümünü yazma:

    C:\>procdump -ma 4572
    
  • Önce Mini yazın, ardından PID '4572' ile bir işlemin Tam dökümünü yazın:

    C:\>procdump -mm -ma 4572
    
  • "Not defteri" adlı işlemin 5 saniye arayla 3 Mini dökümü yazma:

    C:\>procdump -n 3 -s 5 notepad
    
  • Beş saniye boyunca %20 CPU kullanımını aştığında 'consume' adlı işlemin en fazla 3 Mini dökümünü yazın:

    C:\>procdump -n 3 -s 5 -c 20 consume
    
  • Pencerelerinden biri 5 saniyeden uzun süre yanıt vermediğinde 'hang.exe' adlı bir işlem için Mini dökümü yazın:

    C:\>procdump -h hang.exe
    
  • Pencerelerinden biri 5 saniyeden uzun süre yanıt vermediğinde 'hang.exe' adlı bir işlem için Tam ve Çekirdek dökümü yazın:

    C:\>procdump -ma -mk -h hang.exe
    
  • Toplam sistem CPU kullanımı 10 saniye boyunca %20'yi aştığında 'outlook' adlı işlemin Mini dökümünü yazın:

    C:\>procdump outlook -s 10 -p "\Processor(_Total)\% Processor Time" 20
    
  • Outlook'un tanıtıcı sayısı 10.000'i aştığında 'outlook' adlı işlemin Tam dökümünü yazın:

    C:\>procdump -ma outlook -p "\Process(Outlook)\Handle Count" 10000
    
  • Tanıtıcı sayısı 10.000'i aştığında 'svchost' PID 1234, Örnek #87'nin tam dökümünü yazın:

    C:\>procdump -ma 1234 -p "\Process(svchost#87)\Handle Count" 10000
    

    Not: Birden Çok Örnek Sayacı
    Sayacın birden çok örneği varsa, Ad ve/veya Örnek numarasını eklemeniz gerekir.

    \Processor(NNN)\% Processor Time
    \Thermal Zone Information(<name>)\Temperature
    \Process(<name>[#NNN])\<counter>
    

    Eski işletim sistemi, sayaçlar için \Process PID'yi eklemenizi gerektirir.

    \Process(<name>[_PID])\<counter>
    

    İpucu: Sayaçları görüntülemek için Performans İzleyicisi kullanın (büyük/küçük harf duyarlılığı).
    İpucu: Tabanlı sayaçlar için \Process(*) , bir PID'yi ile #NNNeşlemek için PowerShell kullanın.

    Get-Counter -Counter "\Process(*)\ID Process"
    
  • 2. şans özel durumu için Tam döküm yazın:

    C:\>procdump -ma -e w3wp.exe
    
  • 1. veya 2. şans özel durumu için Tam döküm yazın:

    C:\>procdump -ma -e 1 w3wp.exe
    
  • Hata ayıklama dizesi iletisi için Tam döküm yazın:

    C:\>procdump -ma -l w3wp.exe
    
  • w3wp.exe her 1. veya 2. şans özel durumunun en fazla 10 Tam dökümünü yazın:

    C:\>procdump -ma -n 10 -e 1 w3wp.exe
    
  • Bir özel durumun kodu/adı/msg'i içeriyorsaNotFound en fazla 10 Tam döküm yazın:

    C:\>procdump -ma -n 10 -e 1 -f NotFound w3wp.exe
    
  • Hata ayıklama dizesi iletisi 'NotFound' içeriyorsa en fazla 10 Tam döküm yazın:

    C:\>procdump -ma -n 10 -l -f NotFound w3wp.exe
    
  • 'not defteri' adlı işlemi bekleyin (ve özel durumlar için izleyin):

    C:\>procdump -e -w notepad
    
  • 'not defteri' adlı bir işlemi başlatın (ve özel durumlar için izleyin):

    C:\>procdump -e -x c:\dumps notepad
    
  • Başlatmaya kaydolun ve 'application' adlı bir mağazayı etkinleştirmeyi deneme. Yeni bir ProcDump örneği etkinleştirildiğinde başlar:

    C:\>procdump -e -x c:\dumps Microsoft.BingMaps_8wekyb3d8bbwe!AppexMaps
    
  • 'Package' adlı mağazanın lansmanı için kaydolun. Yeni bir ProcDump örneği (el ile) etkinleştirildiğinde başlar:

    C:\>procdump -e -x c:\dumps Microsoft.BingMaps_1.2.0.136_x64__8wekyb3d8bbwe
    
  • İşlenmeyen bir özel durum olduğunda Microsoft Exchange Information Store'un MiniPlus dökümünü yazın:

    C:\>procdump -mp -e store.exe
    
  • Döküm, özel durum kodları/w3wp.exe adları yazmadan görüntüleme:

    C:\>procdump -e 1 -f "" w3wp.exe
    
  • Windows 7/8.0; Ardışık 5 tetikleyicide kesintiyi azaltmak için Yansıma kullanın:

    C:\>procdump -r -ma -n 5 -s 15 wmplayer.exe
    
  • Windows 8.1+; 5 eşzamanlı tetikleyici için kesintiyi azaltmak için PSS kullanın:

    C:\>procdump -r 5 -ma -n 5 -s 15 wmplayer.exe
    
  • ProcDump'u (AeDebug) otopsi hata ayıklayıcısı olarak yükleyin:

    C:\>procdump -ma -i c:\dumps
    

    .. veya..

    C:\Dumps>procdump -ma -i
    
  • ProcDump'u (AeDebug) otopsi hata ayıklayıcısı olarak kaldırın:

    C:\>procdump -u
    

Örnek komut satırlarının listesine bakın (örnekler yukarıda listelenmiştir):

C:\>procdump -? -e
  • Windows Internals Book Mark Russinovich ve David Solomon tarafından windows iç kesin kitap için resmi güncelleştirmeler ve errata sayfası.
  • Windows Sysinternals Yönetici Başvurusu Mark Russinovich ve Aaron Margosis'in sysinternals yardımcı programları için resmi kılavuz, tüm araçların açıklamaları, özellikleri, sorun giderme için bunların nasıl kullanılacağı ve kullanımlarının gerçek dünya örnekleri gibi resmi kılavuz.

İndir ProcDump'ıindirin (714 KB)

Linux için ProcDump'ı indirin (GitHub)
Mac için ProcDump'ı indirin (GitHub)

Çalıştırma tarihi:

  • İstemci: Windows 8.1 ve üzeri.
  • Sunucu: Windows Server 2012 ve üzeri.

Daha Fazla Bilgi Edinin