티스토리 뷰
프로그램 개발 후 필요가 있을 때 일시적으로 사용하는 프로그램이 아니라면 시간이 흐름에 따라 문제가 발생하는지 꼭 확인할 필요가 있다. Long Run Test, Aging Test와 연관된다고 할 수 있다. 코어 덤프로 프로그램이 죽는다면 어디가 문제인지 명확하지만 메모리 누출, 핸들 누출등이 있다면 조금은 난감한 상황이 될 수 있다. 재현이 빠르게 될 수 있다면 어떻게든 문제를 찾을 수 있겠지만 장시간 수행 시켜야 알 수 있다면 정말 난감할 수 있다. 그럼에도 메모리 누출, 핸들 누출, CPU 과점 등은 얼마간의 모니터링으로 그 추세를 판단할 수 있다. 본 포스팅은 윈도우의 성능 모니터를 통해서 간편하게 프로그램과 연관된 시스템 자원 정보를 로그로 남기는 과정을 다루고자 한다.

윈도우+R 단축키로 perfmon을 실행시켜서 성능 모니터를 가동한다.

성능 모니터가 가동되면 데이터 수집기 집합 > 사용자 정의를 우측 마우스를 클릭하고 새로 만들기 > 데이터 수집기 집합을 선택한다.

위의 그림처럼 데이터 로그 만들기 > 성능 카운터를 선택하고 [다음]을 누른다.

성능 카운터 [추가] 버튼으로 모니터링 대상을 선택한다.

카운터 선택 대화창에서 좌측 상단의 "Process" 섹션을 열고 원하는 모니터링 항목을 선택하고, 좌측 하단에서 모니터링하려는 프로세스를 선택한 다음에 하단의 [Add>>] 버튼을 클릭하여 항목을 추가한다. 이와 같은 방식으로 모니터링하려는 항목들을 반복적으로 추가해도 되고 우측 상단의 모니터링 대상을 Ctrl키나 Shift키로 다중 선택하여 한번에 추가할 수도 있다. 필자의 경우 프로그램의 메모리, CPU, 핸들을 모니터링하도록 설정했다. [확인] 버튼으로 원래 화면으로 돌아간다.

항목을 추가한 다음에는 [다음]으로 진행한다.

로그를 저장할 위치를 지정하고 [다음]을 누른다.

작성한 데이터 수집기 집합에 대하여 "저장 후 닫기"를 선택하고 [마침]을 누른다.

성능 모니터 화면으로 돌아오면 새 항목의 속성을 선택하여 로그 형식을 "쉼표로 구분"으로 선택하고 [적용] 및 [확인] 한다. 이 형식으로 설정하면 CSV 파일 형태로 엑셀 등의 도구로 내용을 확인하고 차트로 추이를 판단할 수도 있다.

작성한 성능 카운터를 선택하면 상단에 시작 및 중지 아이콘이 나타나는데 이것으로 로깅의 시작 및 중지를 지시할 수 있다. 로그를 확인하려면 작업 중지 후 수행한다.

위의 그림은 로그로 남겨진 CSV 파일을 열어본 결과이다.
'컴퓨터 팁(Tip)' 카테고리의 다른 글
| 설치된 닷넷 SDK와 닷넷 런타임을 확인하기 (0) | 2025.09.25 |
|---|---|
| USB 메모리를 읽기 전용으로 만들기 (0) | 2025.09.10 |
| 서브버전(Subversion) 브랜치를 트렁크에 머지하기 (0) | 2025.07.31 |
| 서브버전(Subversion) 브랜치 만들기 (0) | 2025.07.31 |
| XML 파일 비교하기(xmldiff, 의미 기반 비교) (0) | 2024.07.13 |