SQL Server를 활용한 Perfmon 로그 저장

 

시스템의 성능을 분석하기 위하여 성능 모니터를 많이 사용하는데 이번에는 성능모니터의 로그를 SQL Server를 활용하여 테이블에 저장하여 사용하는 방법을 알아 보겠습니다.

   

성능 모니터 정보를 저장할 데이터베이스를 생성 합니다. 실습에서는 Perfmon 이라는 데이터베이스를 생성합니다. 이 때 데이터베이스의크기는 충분히 늘려줍니다. 운영을 하다 보면 생각보다 성능 카운터의 로그가 많이 쌓이는 것을 알 수있습니다.

      

   

   

[시작] – [관리도구] – [데이터 원본(ODBC)]를 선택 합니다.

   

   

[ODBC 데이터 원본 관리자]에서 [시스템 DSN]탭에서 [추가] 버튼을 클릭합니다.

   

   

[SQL Server]를 선택 합니다.

   

   

[SQL Server에 새로운 데이터 원본 만들기]에서 다음과 같이 ODBC의 이름을 지정하고 연결한 SQL Server를 지정합니다.

   

   

데이터 원본 만들기에서 Windows NT 인증을 사용합니다.

   

기본 데이터베이스를 성능 정보를 저장할 데이터베이스로 선택 합니다.

   

   

사용자에 맞게 옵션을 선택 합니다.

   

   

데이터 원본 테스트를 통하여 연결을 확인하고 마법사를 종료 합니다.

   

다음과 같이 ODBC 원본이 생성된 것을 확인 할 수 있습니다.

   

[시작] – [실행] – [Perfmon]을 입력하여 성능 모니터를 실행합니다.

아래 그림과 같이 트리를 확장하여 [데이터 수집기 집합]을 선택 합니다.

   

   

수집기 집합에서 [수동으로 만들기]를선택 합니다.

   

   

데이터 형식에서는 [성능 카운터]를선택 합니다.

   

   

[추가] 버턴을 이용하여모니터링 할 카운터를 추가 합니다.

   

   

데이터 저장 경로는 그냥 두고 다음을 선택 합니다.

   

   

데이터 수집기 집합을 [저장 후 닫기]로 선택하고 마법사를 종료 합니다.

 

   

사용자가 만든 데이터 수집기를 클릭하면 생성한 성능 카운터를 확인 할 수 있습니다. 마우스 카운터에서 마우스 오른쪽을 클릭하여 [속성]을 선택 합니다.

  로그형식– SQL Server

  데이터 원본이름 - Perfmon

   

   

속성 설정을 완료 하였으면 카운터를 실행 합니다. 카운터가 실행되면 좌측의 탐색기에 실행 아이콘이 나타납니다.

   

   

데이터베이스를 살펴보면 다음과 같이 카운터 테이블이 생성된 것을 확인 할 수 있습니다.

   

   

쿼리를 이용하여 테이블의 내용을 조회하여 분석 할 수 있습니다.

   

수많은 데이터베이스 서버를 관리 하여야 할 때 관리용 서버를 하나 두고 모든 데이터를 중앙으로 수집하여 분석할 수 있는 시스템을 마련해 두면 빠른 모니터링과 분석이 용이 합니다.


강성욱 / jevida@naver.com
Microsoft SQL Server MVP
Blog : http://sqlmvp.kr
Facebook : http://facebook.com/sqlmvp



No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 1064
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 1666
1614 SQL Server 성능 테스트 프로그램 minsouk 2015.01.17 6067
1613 extended events 를 이용한 wait 분석 minsouk 2014.07.25 6284
1612 동일기준에대해 복수컬럼 PIVOT 사용하기 열이 2014.06.27 22287
1611 SELECT / UPDATE / INSERT 쿼리를 쉽게 만들자... [1] Hisory 2014.05.12 10908
1610 ssms 자동 언어 변경이 되면, 이렇게 설정하세요 minsouk 2014.04.27 9594
1609 [QUERY] 그룹 번호 만들기 이스트럭(강동운) 2014.04.11 8883
1608 [QUERY]연승을 구해보자! [2] 이스트럭(강동운) 2014.04.11 9785
1607 VLF 이스트럭(강동운) 2014.04.11 8135
1606 extended events 용 excel view 공개 버전 minsouk 2014.04.07 6431
1605 [TIP] 한 라인에서 여러 테이블 삭제 하기. [3] 엘리엘1 2014.01.03 8646
1604 GhostRecord(인덱스에서 행 삭제시발생) jevida(강성욱) 2013.11.25 13582
1603 프로시저, 함수, 트리거 생성 정보 보기. jevida(강성욱) 2013.11.25 10656
1602 힙테이블에서 행을 삭제하면어떻게 처리 될까? [1] jevida(강성욱) 2013.11.25 9398
1601 SSMS의 디자이너에서 테이블 수정 시 발생하는 영향 [1] jevida(강성욱) 2013.11.25 10547
» SQL Server를 활용한 Perfmon 로그 저장 [1] jevida(강성욱) 2013.11.21 14806
1599 VLF 환경과 성능 jevida(강성욱) 2013.11.21 10099
1598 Block 모니터링 jevida(강성욱) 2013.11.21 8093
1597 추적파일을 테이블로 로드하기. jevida(강성욱) 2013.11.21 8915
1596 LOGON 트리거 jevida(강성욱) 2013.11.18 6587
1595 DeadLock(교착상태) 모니터 하기 [2] jevida(강성욱) 2013.11.18 11425





XE Login