WER
1. κ°μ
Windows Error Reporting(WER)μ Microsoftμ μλ λ³΄κ³ μμ€ν μΌλ‘, Windows μ΄μ 체μ μμ λ°μνλ μ ν리μΌμ΄μ , λλΌμ΄λ², μ΄μ 체μ μ€λ₯λ₯Ό κ°μ§νκ³ λ³΄κ³ νλ€. λμ§νΈ ν¬λ μ λΆμ κ΄μ μμ WERμ μ€λ₯ λ°μ νλ‘κ·Έλ¨κ³Ό λ°μ μκ°μ νμΈν μ μμΌλ©° μ°κ΄λ μ΄λ²€νΈ λ‘κ·Έλ₯Ό ν΅ν΄ μμ€ν νλμ μΆμ ν μ μλ€.
2. μν°ν©νΈ κ²½λ‘
WER λ³΄κ³ μ νμΌ(Report.wer)
WER λ³΄κ³ μ νμΌμ μμ€ν μ μ€λ₯ λ³΄κ³ μλ₯Ό ν¬ν¨νλ©°, μ£Όλ‘ λ€μ κ²½λ‘μ μ μ₯λλ€.
κ²½λ‘:
C:\\ProgramData\\Microsoft\\Windows\\WER
νμ ν΄λ:
ReportArchive
: 보κ΄λ μ€λ₯ λ³΄κ³ μReportQueue
: λκΈ° μ€μΈ μ€λ₯ λ³΄κ³ μμ€μ νμΌμ νμΈλμ§ μμμΌλ $I30 νμΌμμ wer νμΌμ΄ μμμμ μ μ μλ€.
Temp
: μμ μ€λ₯ λ³΄κ³ μμ€μ νμΌμ νμΈλμ§ μμμΌλ $I30 νμΌμμ wer νμΌμ΄ μμμμ μ μ μλ€.
νμΌ νμ:
.wer
: ν μ€νΈ νμμ μ€λ₯ λ³΄κ³ μ.dmp
: λ©λͺ¨λ¦¬ λ€ν νμΌ.hdmp
: μμΆλ λ©λͺ¨λ¦¬ λ€ν νμΌ (νμ΄λΈλ¦¬λ λ€ν)
WER EventLog
μΌλ° μ΄λ²€νΈ λ‘κ·Έ:
κ²½λ‘:
C:\\Windows\\System32\\winevt\\Logs
μ΄λ²€νΈ λ‘κ·Έ νμΌ:
Application.evtx
: μ ν리μΌμ΄μ κ΄λ ¨ μ΄λ²€νΈ λ‘κ·ΈEvent ID: 1000, 1001
System.evtx
: μμ€ν μ΄λ²€νΈ λ‘κ·Έ
WER μ§λ¨ μ΄λ²€νΈ λ‘κ·Έ:
κ²½λ‘:
C:\\Windows\\System32\\winevt\\Logs\\Microsoft-Windows-WER-Diag%4Operational.evtx
λ‘κ·Έ λ΄μ©: WER μμ€ν μ μ§λ¨ μ 보μ κ΄λ ¨λ μ΄λ²€νΈ (μ: μ€λ₯ λ³΄κ³ μ μμ± λ° μ μ‘ μν, μ μ‘ μ€ν¨ μ΄μ λ±)
WER Registry
κ²½λ‘
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting
HKEY_CURRENT_USER\Software\Microsoft\Windows\Windows Error Reporting
Registry
(S) Consent
(V) DefaultConsent
1: Always ask
2: Parameters only
3: Parameter and safe data
4: All data
(S) DebugApplications
(V) [ExeName]
0: Processes with an executable image name of βExeNameβ do not require the user to choose βDebugβ or βContinueβ
1: Processes with an executable image name of βExeNameβ require the user to choose βDebugβ or βContinueβ
(S) LocalDumps
(S) [Application Name]
(V) DumpFolder: λ€ν λλ ν°λ¦¬ κ²½λ‘. Default κ°μ %LOCALAPPDATA%\CrashDumps.
(V) DumpCount: λ€ν μ΅λ κ°. Default κ°μ 10. μ΅λ κ°μ μ΄κ³Όνλ©΄ ν΄λμμ κ°μ₯ μ€λλ λ€ν νμΌμ΄ μ λ€ν νμΌλ‘ λ체
(V) DumpType
0: Custom dump
1: Minidump (default)
2: Fulldump
λλ¨Έμ§λ 곡μ λ¬Έμλ₯Ό μ°Έκ³ νλ€.
3. Report.wer
ν΄λΉ λ¨λ½μμλ ReportArchive
μμ λ°κ²¬λ Report.wer νμΌμ νλ κ°μ λν΄ μ 리ν¨. Report.werμ AppCrashView.exe νλ‘κ·Έλ¨μΌλ‘ νμΈν μ μλ€.
Report.wer ν΄λ λͺ
Report.wer νμΌμ ν΄λ λͺ μ 보면 μ€λ₯ μ νλΆν° ν΄μκ°λ€μ΄ ν¬ν¨λμ΄ μλ€.
첫λ²μ§Έ ν΄μ
ν΄λ λͺ
μμ λ°κ²¬λλ 첫λ²μ§Έ ν΄μλ‘λ μ ννκ² λͺ
μΉμ΄λ κ΄λ ¨λ μ€λͺ
μ νμΈν μ μμΌλ, μ¬λ¬ Report.wer
νμΌμ λΆμν κ²°κ³Ό Sig
νλλ‘ λ§λ€μ΄μ§λ κ²μΌλ‘ μμλλ€. Sig
νλ μμλ νλ‘κ·Έλ¨μ λν μ 보 λ° μμΈ μ½λ λ± μ¬λ¬ λ°μ΄ν°κ° ν¬ν¨λμ΄μλ€.
첫λ²μ§Έ ν΄μκ°μ΄ κ°λ€λ©΄ λμΌν νλ‘κ·Έλ¨, νλ‘κ·Έλ¨ λ²μ , μ€λ₯, μμΈ μ½λμμ μ μ μλ€.
λλ²μ§Έ ν΄μ
ν΄λ λͺ
μμ λ°κ²¬λλ λλ²μ§Έ ν΄μλ‘λ ReportType
κ³Ό TargetAppVer
λ‘ λ§λ€μ΄μ§λ κ²μΌλ‘ μμλλ€.
λλ²μ§Έ ν΄μκ°μ΄ κ°λ€λ©΄ κ°μ ReportType
μ νλ‘κ·Έλ¨μ λ²μ μ΄ λμΌν¨μ μ μ μλ€.
μ€λ₯ μ νμ΄ NonCriticalμΈ κ²½μ° ReportType
μ΄ β0βμ΄μ§λ§ Report.wer
μμλ μ μ₯λμ§ μλλ€. κ·Έλμ λλ²μ§Έ ν΄μ κ°μ΄ 00000000
μΌλ‘ κ³ μ λλ€.
Report.wer νλ
EventType
APPCRASH
BEX
BEX64
MoAppHang
AppHangB1
StoreAgentInstallFailure1
StoreAgentDownloadFailure1
ReportType
0: NonCritical
1: Critical
2: ApplicationCrash
3: ApplicationHang
4: Kernel
5: Invalid
ReportStatus
λλΆλΆ **268435456 (2^28)**μΌλ‘ Bit κ°μΌλ‘ μμλ¨
268435456
2^28
268566528
2^28 + 2^17
97
2^0 + 2^5 + 2^6
ReportIdentifier
WER λ³΄κ³ μ μλ³μ. ν΄λ λͺ μ λ§μ§λ§μ ν΄λΉλ¨
IntegratorReportIdentifier
ν΅ν©λ λ³΄κ³ μ μλ³μ
μ΄λ²€νΈ λ‘κ·Έμλ ν΄λΉ μλ³μ κ°μ΄ λ³΄κ³ μ IDλ‘ νμΈλλ€.
TargetAppId
βWβλ‘ μμνλ κ²κ³Ό βUβλ‘ μμνλ κ²μ΄ μμ.
AppCrashκ° λ°μν κ²μ βWβλ‘ μμ
Application Hang (μ ν리μΌμ΄μ μ€λ¨)μ βUβλ‘ μμν¨. λ€λ§ κΈ°μ‘΄μ AppCrashκ° λ νλ‘κ·Έλ¨μΈ κ²½μ° βWβλ‘ νμλ¨
TargetAppVer
λ²μ λͺ !μκ°!ν΄μ!νλ‘κ·Έλ¨ μ΄λ¦ μΌλ‘ ꡬμ±λμ΄μλ€.
μκ°μ νλ‘κ·Έλ¨μ μμ±μμ μμΈν 보기 ν μμ ν μκ°μΌλ‘ νμΈλλ€.
λ²μ λͺ μ λλΆλΆ μμ§λ§ Windows Storeμμ λ€μ΄ λ°μ νμΌμΈ κ²½μ° λ²μ μ΄ νμΈλ¨
μ 체 νλ
Version
λ³΄κ³ μ λ²μ
EventType
μ΄λ²€νΈ μ ν
BEX=Buffer overflow EXception
AppCrash
EventTime
μ΄λ²€νΈ λ°μ μκ°
FileTime Timestamp
ReportType
λ³΄κ³ μ μ ν
0: NonCritical
1: Critical
2: ApplicationCrash
3: ApplicationHang
4: Kernel
5: Invalid
Consent
Microsoftμ λ³΄κ³ μλ₯Ό μ μ‘ λμ μ¬λΆ
UploadTime
λ³΄κ³ μκ° μ λ‘λλ μκ°
ReportStatus
λ³΄κ³ μμ μν
λ³΄κ³ μ μ λ‘λ, 보λ₯ λ±λ±
ReportIdentifier
λ³΄κ³ μ μλ³μ
IntegratorReportIdentifier
ν΅ν©λ λ³΄κ³ μ μλ³μ
Wow64Host
64bit νΈμ€νΈμμ μ€νλλ 32bit νλ‘μΈμ€
Wow64Guest
32λΉνΈ κ²μ€νΈ νλ‘μΈμ€λ₯Ό λνλ λλ€.
NsAppName
μ€λ₯κ° λ°μν μμ© νλ‘κ·Έλ¨μ μ΄λ¦
OriginalFilename
μμ© νλ‘κ·Έλ¨μ μλ νμΌ μ΄λ¦
AppSessionGuid
μμ© νλ‘κ·Έλ¨ μΈμ μ κ³ μ μλ³μ
TargetAppId
νκ² μμ© νλ‘κ·Έλ¨μ μλ³μ
TargetAppVer
νκ² μμ© νλ‘κ·Έλ¨μ λ²μ
BootId
μμ€ν λΆν μλ³μ
TargetAsId
νκ² μμ© νλ‘κ·Έλ¨ μΈμ μ κ³ μ μλ³μ
IsFatal
μ€λ₯κ° μΉλͺ μ μΈμ§ μ¬λΆ
Response.BucketId
λ¬Έμ μ λ²ν· μλ³μ
Response.BucketTable
λ¬Έμ μ λ²ν· ν μ΄λΈ
Response.LegacyBucketId
μ΄μ λ¬Έμ λ²ν· μλ³μ
Response.type
μλ΅ μ ν
Sig
μ€λ₯μ λν μκ·Έλμ² μ 보
DynamicSig
λμ μλͺ μ 보
UI
μ¬μ©μ μΈν°νμ΄μ€
LoadModules
λ‘λ λͺ¨λ μ΄λ¦
State
μν μ 보
OsInfo
μ΄μ체μ μ 보
FriendlyEventName
μ¬μ©μμκ² νμλλ μ΄λ²€νΈμ μΉμν μ΄λ¦
ConsentKey
λμ μ¬λΆ
AppName
μμ©νλ‘κ·Έλ¨ μ΄λ¦
AppPath
μμ©νλ‘κ·Έλ¨ κ²½λ‘
NsPartner
ννΈλ μ 보
NsGroup
κ·Έλ£Ή μ 보
ApplicationIdentity
μμ© νλ‘κ·Έλ¨ μλ³ μ 보
MetadataHash
λ©νλ°μ΄ν° ν΄μ
4. Event Log μ WER
ν΄λΉ λ¨λ½μμλ Application.evtx μμ νμΈν μ μλ λ΄μ©μ λν΄ μ 리ν¨. μ΄λ²€νΈ λ·°μ΄λ₯Ό νμΈνκΈ° μν΄μλ eventvwr.msc νλ‘κ·Έλ¨μ μ¬μ©ν΄ νμΈν μ μλ€. (Win + r ν eventvwr.msc μ λ ₯)
Event ID 1001
ν΄λΉ μ΄λ²€νΈ λ‘κ·Έμμλ 10κ°μ 맀κ°λ³μλ₯Ό νμΈν μ μλ€. ν΄λΉ νλΌλ―Έν°λ Report.werμμ Sig νλμ κ°λ€.
Event ID 1000
ν΄λΉ μ΄λ²€νΈ λ‘κ·Έμμλ 1001μμ νμΈν νλΌλ―Έν°μ κ°μ λν΄ μ νν λͺ μΉκ³Ό ν¨κ» κ°μ νμΈν μ μλ€.
5. WER λ·°μ΄ λ° νμ νλ‘κ·Έλ¨ μ μ
νλ‘κ·Έλ¨ μμ± μ€
κ° νλμ μλ―Έλ₯Ό νμΈ ν μΆκ°ν μμ μ΄λ©°, νλ κ° λ³λ‘ λΆλ₯ λ° κ²μκΉμ§ κ°λ₯νκ² ν μμ μ΄λ€.
μ΄ νλ‘κ·Έλ¨μ λͺ©μ μ κΈ°μ‘΄ WER λ·°μ΄μ κΈ°λ₯μ κ°ννκ³ λ 보기 μ’κ² νκΈ° μν¨μ΄λ€.
6. μ°Έκ³
Last updated