“장애 조사” 태그의 글
“장애 조사” 태그가 붙은 글 30건을 최신순으로 정리했습니다.
-
디스크 사용률 100%는 무엇을 멈추면 해결될까 ── SysMain·Windows Search·Defender 구분법
Windows의 디스크 사용률이 100%가 되는 원인을 처리량·응답 시간·파일로 분리해 봅니다. SysMain의 일시 중지와 복귀, Windows Search 검색 범위의 재검토, Defender를 끄지 않는 조사 방법을 그림으로 설명합니다.
-
Windows의 이름 확인 순서 ── hosts·DNS 캐시·LLMNR/mDNS·DoH
「이름을 확인할 수 없다」「일부 PC만 연결되지 않는다」는 hosts·DNS 캐시·DNS 서버·LLMNR/mDNS 중 어느 층이 답했는지에 따라 결과가 달라집니다. Windows의 이름 확인 순서와 DoH가 바꾸는 것을 구조부터 정리하고, 층별로 분리해 보는 절차를 해설합니다.
-
절전에서 재개하면 깨지는 앱 ── 전원 이벤트의 구조와 재개에 강한 업무 앱을 만드는 방법
노트북을 열었더니 업무 앱의 통신이 끊어져 있었다――원인은 절전을 전제하지 않은 설계입니다. WM_POWERBROADCAST에 의한 알림의 흐름, Modern Standby의 동작, 끊김·재연결 설계, 절전 억제와 조사 명령까지를 1차 정보로 설명합니다.
-
「응답 없음」의 정체 ── Windows가 앱을 「멈췄다」고 판단하는 구조와, 멈추지 않는 설계
Windows의 「응답 없음」은 창이 5초 동안 메시지를 꺼내지 않으면 OS가 판단해 고스트 창으로 교체하는 구조입니다. 판단의 내부 동작부터 멈추는 전형적인 원인, UI 스레드에서 무거운 처리를 빼내는 설계, hang 조사 절차까지 설명합니다.
-
WPR/WPA 실무 ── 「PC 전체가 느리다」를 시스템 전체에서 조사하는 성능 조사 입문
「PC 전체가 느리다」「부팅이 느리다」처럼 작업 관리자로는 따라갈 수 없는 성능 문제는 OS 전체 ETW 트레이스를 모아 읽는 WPR/WPA로 조사합니다. wpr.exe 수집 절차부터 WPA에서 CPU·대기·디스크 I/O를 읽는 법까지 설명합니다.
-
OneDrive 「파일 온디맨드」와 업무 앱 ── 플레이스홀더가 깨뜨리는 전제와 대책
데스크톱 CSV가 읽히지 않거나 가져오기가 「파일을 찾을 수 없습니다」로 실패한다——원인은 OneDrive의 KFM과 파일 온디맨드일 수 있습니다. 플레이스홀더 구조, 속성 판정, 앱과 정보시스템 양쪽의 대책을 설명합니다.
-
Windows 패킷 캡처 실무 ── pktmon·netsh trace·Wireshark 역할 나누기
앱 로그에 「타임아웃」만 남는 통신 장애는, 실제로 네트워크에 흐른 패킷을 보면 한 단계 더 깊게 조사할 수 있습니다. Wireshark를 설치할 수 없는 서버에서도 OS 표준 pktmon·netsh trace로 캡처할 수 있습니다. 캡처와 분석의 역할 나누기를 실무 절차로 설명합니다.
-
Windows 오류 코드 읽기 ── Win32·HRESULT·NTSTATUS 삼층 구조
0x80004005가 나오면 검색하기 전에 먼저 분해합니다. Win32 오류·HRESULT·NTSTATUS의 삼층 구조, 0x8007xxxx가 Win32 오류를 감싼 형태라는 가장 중요한 패턴, err.exe와 PowerShell로 코드를 찾는 방법까지 정리합니다.
-
Windows의 「메모리 사용량」은 무엇을 나타내는가 ── Working Set·Private Bytes·Commit·페이지 파일을 올바르게 읽는 법
작업 관리자의 메모리, Working Set, Private Bytes, Commit은 같은 값이 아닙니다. Windows의 가상 메모리와 물리 메모리의 관계, 페이지 파일의 역할, 메모리 부족이나 누수 조사에서 봐야 할 지표를 설명합니다.
-
멀티스레드 실무 베스트 프랙티스 C++ 편 ── RAII와 jthread로 사고를 구조적으로 없애기
C++ 멀티스레드는 data race가 곧 undefined behavior가 되는 세계입니다. std::thread 소멸자의 함정, jthread와 stop_token으로 멈추는 설계, scoped_lock의 deadlock 회피, atomic의 자리, Win32 동기화 API와...
-
볼륨 섀도 복사본(VSS)의 원리와 실무 ── 사용 중인 파일은 어떻게 백업되는가
사용 중인 파일은 공유 위반으로 복사하지 못하는데, 백업 소프트웨어는 어떻게 복사할까요. 볼륨 섀도 복사본(VSS)의 requester·writer·provider 역할, copy-on-write 동작, vssadmin 실무와 diff area의 함정을 설명합니다.
-
Windows I/O의 심층(제5회) ── NTFS의 내부 구조: MFT로 이해하는 파일 시스템
NTFS의 내부 구조를 그림으로 설명하는 연재 제5회입니다. MFT와 파일 레코드, 다중 데이터 스트림(Zone.Identifier), 하드 링크와 8.3 이름, reparse point, 두 종류의 저널, 스파스와 압축까지를 개발자 관점에서 정리합니다.
-
Windows I/O 내부 구조(제1회) ── 모든 읽기·쓰기는 IRP가 된다: I/O 시스템의 전체 그림
Windows I/O 시스템을 밑바닥부터 설명하는 연재의 제1회입니다. Object Manager namespace, driver·device·file 세 가지 object, IRP 수명 주기, CloseHandle 뒤에서 일어나는 일까지를 그림으로 정리합니다.
-
Get-WinEvent로 이벤트 로그를 실무에서 조사하기 ── 필터링 속도가 조사 시간을 가른다
Windows 이벤트 로그 조사를 PowerShell로 효율화하는 방법을 정리합니다. Where-Object로 걸러내면 느린 이유, FilterHashtable과 XPath의 쓰임 구분, 재시작·로그온·앱 비정상 종료 조사 레시피, 여러 대에서 수집하는 방법까지 설명합니다.
-
Process Explorer / Handle / VMMap 실전 ── hang·누수·「파일 사용 중」을 지금 이 순간의 상태에서 추적하기
「점점 무거워진다」「파일을 지울 수 없다」「hang이 걸렸다」를 조사하는 Sysinternals 실전 제2탄입니다. Process Explorer의 핸들 검색·스레드 스택·누수 감시 컬럼, handle.exe, VMMap으로 메모리 내역을 나누는 방법을 실무 관점에서 설명합니다.
-
Windows의 시각 동기화(w32time)와 업무 시스템 ── 「로그 타임스탬프가 맞지 않는다」를 원리부터 해결하기
장치와 PC에서 로그 시각이 어긋나는 원인을 Windows Time 서비스(w32time)의 원리부터 설명합니다. 도메인 계층과 워크그룹의 기본 동작, w32tm 명령으로 하는 진단, 고정밀 시각과 가상 머신의 주의점, Stopwatch와 UTC를 함께 쓰는 로그 설계까지 정리합니다.
-
슬립・최대 절전 모드・Modern Standby와 장시간 가동 앱 ── '한밤중에 멈춰 있었다'를 설계로 막는다
장시간 동작하는 Windows 앱이 '아침에 보니 멈춰 있었다'가 되는 원인을 S3 슬립/최대 절전 모드/Modern Standby의 차이에서 정리합니다. 슬립 중 타이머와 TCP 연결의 동작, SetThreadExecutionState로 억제하는 방법까지 설명합니다.
-
소스 코드도 명세서도 없는 시스템을 인수인계받았다면 ── 멈추지 않고 운영·유지보수하기 위한 실무 절차
소스 코드도 명세서도 없는 업무 시스템의 운영·유지보수를 시작하는 실무 절차를 정리합니다. 가동 중인 환경의 보존과 백업, 실행 파일·DB 인벤토리, 동작을 바탕으로 한 명세 복원, 수명 연장·래핑·재구축 판단까지 설명합니다.
-
MAX_PATH와 Windows 경로·파일 이름의 함정 ── 260자 제한, 예약 이름, 끝의 점, 대소문자
「파일을 찾을 수 없습니다」의 단골 원인인 경로·파일 이름 제한을 정리합니다. MAX_PATH=260자의 구성, LongPathsEnabled로 긴 경로를 켜는 방법, CON 등의 예약 이름, 끝 점의 정규화, Path.Combine의 함정까지 설명합니다.
-
네트워크 드라이브와 UNC 경로의 함정 ── 업무 앱에서 파일 서버(공유 폴더)를 다루는 실무
업무 앱에서 공유 폴더로 출력·감시할 때 자주 겪는 문제를 정리합니다. 드라이브 문자(Z:)가 서비스에서 보이지 않는 이유, 실행 계정별로 필요한 권한, 오류 1219, FileSystemWatcher 주의점까지 설명합니다.
-
Process Monitor(ProcMon) 실전 가이드 ── 「설정이 읽히지 않는다」「ACCESS DENIED」를 10분 만에 특정한다
「설정을 고쳤는데도 반영되지 않는다」와 같은 장애는 Process Monitor(ProcMon)으로 파일·레지스트리 액세스의 실제 동작을 보고 원인을 특정할 수 있습니다. 필터의 실무적인 사용법, NAME NOT FOUND 등의 읽는 법까지 설명합니다.
-
PerfView와 dotnet-trace로 「느림」을 특정한다 ── .NET 성능 조사의 실무 입문
업무 앱이 「느리다」「CPU가 붙어 있다」일 때, 어떤 도구로 무엇을 볼지. PerfView와 dotnet-trace의 역할 분담, CPU 샘플링 읽는 법, ThreadTime으로 블록 시간을 조사하는 절차까지 실무 조사 흐름을 정리합니다.
-
Windows 이벤트 로그·ETW 입문 ── 업무 앱 로그를 OS 표준 메커니즘에 올리기
이벤트 로그와 ETW는 운영 담당자와 OS 표준 도구에서 보이는 별도 계층의 기록입니다. 파일 로그를 포함한 세 수단의 역할 분담, .NET에서의 기록 방법, EventSource를 통한 ETW 계측, 수집·조사의 실무와 함정까지 설명합니다.
-
WinDbg + SOS로 크래시 덤프 읽기 ── 수집 이후의 실무 분석 입문
Windows 크래시 덤프를 WinDbg와 SOS 확장으로 읽는 절차를 설명합니다. 심볼 경로 설정, !clrstack과 !dumpheap으로 예외와 메모리 누수를 추적하는 방법, !analyze -v, dotnet-dump analyze와의 역할 분담까지 정리합니다.
-
Windows 앱 외주·수탁 개발을 의뢰하기 전에 정리할 점
Windows 앱 외주·수탁 개발을 의뢰하기 전에, 기존 소프트웨어 수정, 장치 연동, COM/ActiveX, 배포·업데이트, 유지보수를 정리하는 포인트를 설명합니다.
-
Windows 앱 크래시 시 로그와 덤프를 남기는 설계
Windows 앱이 예상 밖 예외나 프로그램 실수로 죽어도 나중에 원인을 추적할 수 있는 증거를 남기기 위해, 통상 로그, 최종 크래시 마커, WER LocalDumps, 감시 프로세스를 어떻게 조합해야 하는지를 정리합니다.
-
Windows 크래시 덤프 수집 입문 - WER/ProcDump/WinDbg
재현하기 어려운 Windows 앱 크래시를 추적하기 위해, WER LocalDumps, ProcDump, MiniDumpWriteDump, WinDbg의 용도 구분과 운영상 주의점을 정리합니다.
-
Application Verifier로 만드는 Windows 이상 경로 테스트 기반
Application Verifier가 무엇인지, Handles, Heaps, Low Resource Simulation, !htrace를 사용한 Windows 이상 경로 테스트 기반 구축과 함께 정리합니다.
-
산업용 카메라 장기 가동 크래시 조사 - 핸들 누수편
Windows 앱이 장시간 가동 뒤에 갑자기 크래시할 때의 보는 법을, 산업용 카메라 제어 앱 사례로 핸들 누수를 찾는 방법과 로그 설계 관점에서 정리합니다.
-
TCP 재전송으로 산업용 카메라 통신이 멈추는 원인 분리
TCP 재전송으로 산업용 카메라 통신이 수 초 정지할 때의 원인 분리 방법을 패킷 로스, RTO, RFC1323 타임스탬프, Wireshark 확인 포인트와 함께 정리합니다.