2009년 8월 14일 금요일

DB2_006. MONITORING DATABASE 2

MONITORING DATABASE 2                                              

  EVENT MONITOR

   스냅샷 모니터는 "get snapshot"명령이 실행된 시점에서 데이터베이스의 활동을 기록하려는

  것에 대해 이벤트 모니터는 어떤 시간의 범위 안에서 발생한 이벤트 정보를 기록합니다.

 

   이벤트 모니터를 작설할 때에는 감시할 이벤트 형식을 지정해야 합니다. 다음과 같은 형식이

  있습니다.

 

       DATABASE      최후의 응용프로그램이 데이터베이스에서 종료된 시점에 한 개의 이벤트

                            레코드를 기록합니다.

       TABLES          최후의 응용프로그램이 데이터베이스에서 종료된 시점에 활동 중의 각 테

                            이블에 대해 이벤트 레코드를 기록합니다.

       DEADLOCKS   각 데드락 이벤트에 대해 한 개의 이벤트 레코드를 기록합니다.

       TABLESPACES 최후의 응용프로그램이 데이터베이스에서 종료된 시점에 활동중의 각 테

                            이블 스페이스에 대해 한 개의 이벤트 레코드를 기록합니다.

       BUFFERPOOLS 최후의 응용프로그램이 데이터베이스에서 종료된 시점에 활동중의 각 버

                            퍼풀에 대한 한개의 이벤트 레코드를 기록합니다.

       CONNECTIONS 응용프로그램이 데이터베이스에서 종료된 시점에 각 테이블 스페이스 연

                            결 이벤트에 대해 한 개의 이벤트 레코드를 기록합니다.

       STATEMENTS   응용프로그램에 의해 출력된 각 SQL 문에 대한 한개의 이벤트 레코드를

                            기록합니다.

       TRANSACTIONS 트랜잭션이 완료된 시점에서 각 트랜잭션에 대해 한 개의 이벤트 레코드

                            를 기록합니다.

 

 

  이벤트 모니터 작성

   EV1 이라는 이름의 데드락 이벤트 모니터를 작성하고 이벤트 레코드를

   /event/deadlock/ev1 이라는 디렉토리에 보관하는 방법입니다.

 

    db2 => create event monitor ev1 for statements write to file '/event/statement/ev1'

            maxfiles 3 maxfilesize 1000

 

     4MB의 파일을 최대 3개까지 할당하도록 하고 있습니다. 주의할 것은 ev1파일이 생성될

    디렉토리가 반드시 미리 존재해야 합니다. 그렇지 않으면 I/O 에러를 유발하게 됩니다.

 

   이벤트 모니터의 개시와 정지

    이벤트 모니터의 시작

 

        db2 => set event monitor ev1 state = 1

 

    이벤트 모니터의 정지

 

        db2 => set event monitor ev1 state = 0

 

   이벤트 모니터 출력의 해석

    이벤트 모니터를 통해 출력된 로그를 확인하기 위해 db2evmon 이라는 유틸리티를 사용합

    니다.

 

         $db2evmon -path /event/statement/ev1

댓글 없음:

댓글 쓰기