Process Monitor 사용법, 프로그램의 파일 접근 오류를 필터로 찾기

프로그램이 설정 파일을 읽지 못하거나 저장할 때 오류가 난다면 어떤 경로를 확인하고 있는지 궁금할 수 있습니다. Microsoft Sysinternals의 Process Monitor는 파일 시스템, 레지스트리와 프로세스 관련 활동을 시간 순서대로 보여줍니다. 기록이 빠르게 늘어나는 도구이므로 조사할 동작 하나를 정하고 짧게 캡처하는 것부터 시작해 보세요.

1. 프로그램 이름과 재현 동작을 준비하세요

Microsoft Learn의 Process Monitor 공식 페이지에서 배포 파일을 받습니다. 도구를 실행하기 전에 문제가 나는 프로그램의 실행 파일 이름을 확인하고, 재현 순서를 짧게 적어 두세요. 예를 들어 '설정 창을 연 뒤 저장 버튼 한 번 누르기' 정도면 필요한 구간을 구분하기 좋습니다. 업무 기기에서는 진단 도구의 실행 권한과 자료 공유 기준도 확인합니다.

도구가 시작되면 캡처 상태를 먼저 확인합니다. 화면에 많은 이벤트가 보인다면 일단 캡처를 멈추고 필요한 필터를 설정하세요. 다른 앱의 기록이 너무 많으면 원인 후보를 찾기 어렵습니다. 테스트에 영향을 주지 않는 범위에서 불필요한 창을 줄이고 문제가 나는 프로그램은 재현할 상태로 둡니다.

필터에서 확인할 항목. Process Name: 대상 앱 포함; Path: 필요한 경로로 좁히기; Operation: 어떤 작업인지 확인; Result: 앞뒤 흐름과 함께 읽기
필터에서 확인할 항목

2. 프로세스 이름과 경로를 기준으로 필터링하세요

필터 화면에서 대상 프로세스 이름을 포함하도록 지정하고 해당 앱을 다시 실행하거나 정해 둔 동작을 수행합니다. 실행 중 프로세스가 여러 개라면 PID나 실제 경로를 함께 봅니다. 설정 파일의 경로 일부를 알고 있다면 경로 조건을 더해 볼 수 있습니다. 처음부터 조건을 너무 많이 넣으면 필요한 이벤트가 숨을 수 있으므로 한 조건씩 추가합니다.

문제를 한 번 재현한 직후 캡처를 멈춥니다. 시간, 작업 종류, 경로와 결과 열을 같이 읽어 어떤 요청이 먼저 들어갔는지 확인하세요. 필터가 어떤 항목을 가렸는지 필요하면 다시 살펴봅니다. 화면에 보이는 줄이 적다는 사실과 실제로 발생한 작업이 적다는 것은 다를 수 있습니다.

3. 결과 코드는 앞뒤 흐름과 함께 확인하세요

NAME NOT FOUND가 보여도 프로그램이 여러 후보 경로를 차례로 확인하는 정상 과정일 수 있습니다. 같은 경로의 이후 성공 여부와 오류가 난 시각이 맞는지를 봅니다. ACCESS DENIED가 반복된다면 해당 파일이나 폴더의 권한과 앱이 사용한 경로를 확인할 단서가 됩니다. 오류 코드가 한 줄 있다고 그 파일이 원인이라고 바로 단정하지 마세요.

정상 작업을 같은 앱에서 한 번 더 캡처해 비교하면 차이를 찾기 쉽습니다. 예를 들어 일반 폴더에는 저장되지만 특정 폴더에서만 실패한다면 동일한 파일 이름을 사용하고 저장 위치만 바꾸어 비교합니다. PC의 전체 권한을 넓히기보다 어떤 경로와 작업이 문제인지 먼저 확인하는 편이 좋습니다.

결과 정리 순서. 짧은 기록: 재현 직후 중지; 정상 비교: 같은 앱에서 조건 비교; 저장 범위: 필요 이벤트 확인; 공유 전: 내부 경로·개인 정보 점검
결과 정리 순서

4. 기록을 저장하거나 전달할 때 범위를 확인하세요

필요한 이벤트의 시각, 프로세스, 작업, 경로와 결과를 정리합니다. 저장 기능을 쓰면 표시 중인 이벤트와 더 넓은 기록 중 어떤 범위를 포함하는지 확인할 수 있습니다. 진단 파일에는 개인 사용자 이름이나 내부 폴더와 레지스트리 정보가 담길 수 있으므로 지원 담당자에게 필요한 구간만 전달하세요.

조사가 끝나면 캡처를 종료하고 결과 파일의 보관 위치를 정합니다. 같은 조건에서 시험을 반복해야 한다면 필터 규칙과 실행 순서도 적어 두세요. Process Monitor는 현상을 관찰하는 데 도움이 되며, 원인을 고치려면 관찰한 작업과 실제 실패 메시지를 연결해 판단해야 합니다.

5. 저장 오류가 날짜별 폴더에서만 생긴다면

같은 앱에서 일반 문서 폴더와 문제가 있는 폴더에 각각 작은 테스트 파일을 저장해 보세요. 두 시험에서 작업 이름이 같더라도 Path와 Result가 다를 수 있습니다. 문제가 있는 경로 주변에서 앞서 성공한 접근과 이후 실패한 요청을 함께 봅니다. 화면에 찍힌 첫 실패만 전달하기보다 재현 시각과 마지막 앱 오류를 붙여 두면 실제 작업과 로그를 연결하기 쉽습니다.

참고 자료 Microsoft Sysinternals Process Monitor

Leave a Comment