이벤트 세션 데이터 보기

이 항목에서는 디스플레이 사용자 인터페이스를 사용하여 확장 이벤트 데이터를 확인하고 분석하는 방법에 대해 설명합니다.

  • 대상 데이터 보기

  • 데이터 사용

대상 데이터 보기

SQL Server Management Studio 내에서 지정된 대상에 수집된 데이터를 표시할 수 있습니다.

대상 데이터 보기

대상 데이터를 보려면

  1. 개체 탐색기에서 관리, 확장 이벤트, 세션을 차례로 확장한 다음 세션을 확장합니다.

  2. 대상 이름을 마우스 오른쪽 단추로 클릭한 다음 대상 데이터 보기를 클릭하여 대상 데이터를 표시합니다.

    대상 데이터 창이 기본 보기로 나타나고 대상 데이터가 표시됩니다.

대상 데이터 확인 참고 사항:

  • 대상 데이터는 ETW 대상에 사용할 수 없습니다.

  • xml 형식의 ring_buffer 데이터를 보려면 대상 데이터 창에서 ring_buffer 대상 데이터 링크를 클릭합니다. ring_buffer.xml 파일이 XML 편집기에 나타납니다.

  • event_file 대상의 경우 다음 방법 중 하나를 사용하여 파일 대상 데이터(.XEL 파일)를 봅니다.

    • 파일->SQL Server Management Studio에서 열기를 사용합니다.

    • 파일을 끌어서 SQL Server Management Studio에 놓습니다.

    • .XEL 파일을 두 번 클릭합니다.

    • SQL Server Management Studio에서 실행 중인 확장 이벤트 세션을 마우스 오른쪽 단추로 클릭하고 대상 데이터 보기를 선택합니다.

    • fn_xe_file_target_read_file

    • 파일 -> 열기 메뉴에서 확장 이벤트 파일 병합을 선택하면 두 개 이상의 .XEL 파일을 볼 수 있습니다.

라이브 데이터 감시

라이브 데이터를 캡처하면서 감시할 수 있습니다.

  • 개체 탐색기에서 관리, 확장 이벤트, 세션 노드를 차례로 확장합니다.

  • 세션 이름을 마우스 오른쪽 단추로 클릭한 다음 라이브 데이터 감시를 클릭하여 추적 데이터를 표시합니다.

    기본 표시 열은 이벤트 이름TimeStamp입니다.

    추적 창에 다른 열을 추가하려면 확장 이벤트 도구 모음의 열 선택 단추를 클릭합니다. 세부 정보 탭에 선택한 이벤트에 대한 모든 이벤트 세부 정보가 표시됩니다.

    이벤트는 일반적으로 약 30초 내에 표시됩니다. 대기 시간을 변경하려면 새 세션 대화 상자의 고급 페이지에서 최대 디스패치 대기 시간을 변경합니다.

대상 데이터를 새로 고치려면

event_files 대상에 대해서는 대상 데이터를 새로 고칠 수 없습니다.

  1. 대상 데이터를 자동으로 새로 고치려면 대상 데이터를 마우스 오른쪽 단추로 클릭하고 새로 고침 간격을 선택한 다음 간격 목록에서 새로 고침 간격을 선택합니다.

  2. 자동 새로 고침을 일시 중지하거나 재개하려면 대상 데이터를 마우스 오른쪽 단추로 클릭하고 일시 중지 또는 재개를 선택합니다.

  3. 대상 데이터를 수동으로 새로 고치려면 대상 데이터를 마우스 오른쪽 단추로 클릭한 다음 새로 고침을 선택합니다.

데이터 사용

확장 이벤트 사용자 인터페이스의 분석 기능을 사용하여 문제를 식별할 수 있습니다.

세부 정보 창

세부 정보 창에는 필드 및 동작을 비롯하여 선택된 이벤트에 대한 모든 열이 표시됩니다. 세부 정보 창에서 행을 마우스 오른쪽 단추로 클릭하고 테이블에 열 표시를 선택하여 대상 데이터 테이블에 열을 추가할 수 있습니다.

병합된 열 만들기, 수정 또는 삭제

병합된 열을 사용하면 단일 열에 표시할 필드 집합을 결합할 수 있습니다. 병합된 열에는 필드 목록에 추가된 순서를 바탕으로 NULL이 아닌 첫 번째 필드의 데이터가 표시됩니다. 이는 SQL Server 프로파일러와 유사합니다. SQL Server 프로파일러에서는 이벤트에 따라 특정 열에 다른 데이터가 표시될 수 있습니다. 이에 대한 가장 일반적인 예는 SQL Server 프로파일러의 TextData 필드입니다. 예를 들어 sql_statement_completed 및 sql_batch_completed 이벤트의 문과 batch_text 필드를 각각 myStatement라는 필드로 병합할 수 있습니다. 테이블에 myStatement 열을 표시하면 연결된 이벤트에 적절한 데이터가 표시됩니다.

다음과 같이 병합된 열을 만들거나, 수정하거나, 삭제할 수 있습니다.

  1. .XEL 파일을 열고 추적 결과를 확인합니다. 세션 이름을 마우스 오른쪽 단추로 클릭한 다음 라이브 데이터 감시를 선택할 수도 있습니다.

  2. 추적 결과 창에서 열 머리글을 마우스 오른쪽 단추로 클릭한 다음 열 선택을 클릭합니다.

병합된 열을 만들려면 열 선택 대화 상자에서 새로 만들기를 클릭합니다. 병합된 새 열 대화 상자에서 병합된 열의 이름을 지정하고 병합된 열에 포함할 원래 열을 선택합니다.

병합된 열을 편집하려면 열 선택 대화 상자에서 병합된 열을 선택하고 편집을 클릭합니다. 병합된 열 편집 대화 상자에서 병합된 열의 이름을 바꾸거나 병합된 열에 포함할 원래 열을 수정합니다.

병합된 열을 삭제하려면 열 선택 대화 상자에서 병합된 열을 선택하고 삭제를 클릭합니다.

결과 필터링

추적 결과를 본 다음 필터를 적용하여 추적 창에 표시되는 추적 결과의 범위를 좁힐 수 있습니다. 표시 필터에는 시간 필터 및 고급 필터가 있습니다. 시간 필터를 사용하여 이벤트 타임스탬프를 기준으로 추적 결과를 필터링할 수 있으며, 고급 필터를 사용하면 이벤트 필드와 동작을 사용하여 필터 조건을 구성할 수 있습니다. 시간 및 고급 필터 간에는 "그리고"의 관계가 있습니다.

필터를 만들려면

  1. .XEL 파일을 열고 추적 결과를 확인합니다. 세션 이름을 마우스 오른쪽 단추로 클릭한 다음 라이브 데이터 감시를 선택할 수도 있습니다.

  2. 추적 결과 창에서 필터링하려는 결과를 선택한 다음 확장 이벤트 도구 모음에서 필터를 클릭합니다.

  3. 필터 대화 상자에서 시간 필터 설정을 선택하고 슬라이더 막대를 끌거나 편집 상자에서 시간을 수정하여 시간 필터를 설정합니다.

  4. 추가 필터 섹션에 필터 조건을 적용한 다음 적용을 클릭합니다.

결과 정렬

결과를 오름차순 또는 내림차순으로 정렬하려면

  1. .XEL 파일을 열고 추적 결과를 확인합니다. 세션 이름을 마우스 오른쪽 단추로 클릭하고 라이브 데이터 감시를 선택한 다음 도구 모음에서 데이터 피드 중지 단추를 클릭할 수도 있습니다.

  2. 추적 결과 창에서 정렬하려는 열 머리글을 마우스 오른쪽 단추로 클릭하고 오름차순 정렬 또는 내림차순 정렬을 클릭합니다.

열 머리글을 클릭하여 정렬 순서를 반대로 바꿀 수도 있습니다.

그룹화된 열이 있는 경우 열을 정렬하면 그룹 내의 데이터만 정렬됩니다.

결과 그룹화

그룹화된 결과는 Transact-SQL에서 GROUP BY 절의 기능에 해당합니다. 대상 데이터 테이블에는 데이터가 그룹화되어 표시되므로 사용자가 데이터를 확장하고 축소할 수 있습니다.

데이터를 집계하려면 먼저 그룹화해야 합니다. 예를 들어 query_hash 값을 기준으로 그룹화하고, 기간을 기준으로 내림차순으로 정렬하고, 각 그룹의 평균 기간을 구한 다음 집계를 기준으로 내림차순으로 정렬할 수 있습니다. 이렇게 하면 고유 문 목록을 가장 긴 평균 기간부터 가장 짧은 평균 기간 순으로 보여 주는 목록이 생산됩니다. 최상위 그룹을 확장하면 해당 쿼리의 개별 실행이 가장 긴 것부터 가장 짧은 것 순으로 정렬되어 표시됩니다.

단일 열 또는 여러 열을 기준으로 결과를 그룹화할 수 있습니다.

.XEL 파일을 열고 추적 결과를 확인합니다. 세션 이름을 마우스 오른쪽 단추로 클릭하고 라이브 데이터 감시를 선택한 다음 도구 모음에서 데이터 피드 중지 단추를 클릭할 수도 있습니다.

단일 열을 기준으로 결과를 그룹화하려면 추적 결과 창에서 열 머리글을 마우스 오른쪽 단추로 클릭하고 이 열을 기준으로 그룹화를 클릭합니다. 그룹화를 실행 취소하려면 행 중 하나를 선택하고 모든 그룹화 제거를 클릭합니다.

여러 열을 기준으로 결과를 그룹화하려면 확장 이벤트 도구 모음에서 그룹화 단추를 클릭합니다. 그룹화 대화 상자의 사용 가능한 열 상자에서 그룹화하려는 열을 선택하여 그룹화할 열 상자로 이동합니다. 그룹화할 열 상자에서 순서를 변경하려면 위로 또는 아래로 화살표를 클릭합니다.

결과 집계

추적 결과를 본 다음 결과의 열을 집계하여 이벤트 데이터를 추가 분석할 수 있습니다. 확장 이벤트는 다섯 가지 집계 함수를 지원합니다.

  • sum

  • min

  • max

  • average

  • count

sum, min, max 및 average는 숫자 열에만 사용할 수 있습니다. count는 그룹에서 선택한 열에 대해 존재하는 Null이 아닌 값의 숫자입니다.

그룹에 대해 집계가 수행되므로 집계를 수행하기 전에 결과를 그룹화해야 합니다. 결과를 집계하려면

  1. .XEL 파일을 열고 추적 결과를 확인합니다. 세션 이름을 마우스 오른쪽 단추로 클릭하고 라이브 데이터 감시를 선택한 다음 도구 모음에서 데이터 피드 중지 단추를 클릭할 수도 있습니다.

  2. 확장 이벤트 도구 모음에서 집계 단추를 클릭합니다. 집계 대화 상자에 집계에 사용할 수 있는 열이 표시됩니다.

  3. 집계 유형 열에서 집계 유형을 선택합니다.

  4. 집계별 정렬 상자에서 정렬 열을 선택합니다. 그런 다음 오름차순 또는 내림차순을 선택합니다.

열에서 텍스트 검색

다음과 같이 열에서 텍스트를 검색할 수 있습니다.

  1. .XEL 파일을 열고 추적 결과를 확인합니다. 세션 이름을 마우스 오른쪽 단추로 클릭하고 라이브 데이터 감시를 선택할 수도 있습니다.

  2. 확장 이벤트 도구 모음에서 찾기를 클릭합니다.

  3. 확장 이벤트에서 찾기 대화 상자의 찾을 내용 상자에 검색 텍스트를 입력합니다. 드롭다운 목록에서 가장 최근에 검색한 20개의 문자열 중 하나를 선택할 수 있습니다.

  4. 찾는 위치 상자에서 지정된 텍스트를 검색할 위치를 선택합니다. 검색 시 다음 옵션을 사용합니다.

    • 테이블 열. 추적 창에 표시되는 모든 열을 검색하려면 이 옵션을 사용합니다.

    • 자세히. 확장 이벤트에서 찾기 대화 상자를 열기 전에 선택한 추적 창의 모든 열(승격된 열 및 승격되지 않은 열)을 검색하려면 이 옵션을 사용합니다.

    • Event_column_name. 드롭다운 목록의 특정 이벤트 열에서 검색하려면 이 옵션을 사용합니다.

  5. 검색을 정의하는 방법을 지정하려면 다음 옵션을 사용하십시오.

    • 대/소문자 구분. 찾을 내용 상자에 입력한 텍스트와 내용과 대/소문자가 모두 일치하는 검색 결과만 표시하려면 이 옵션을 사용합니다.

    • 단어 단위로. 입력한 텍스트와 전체 단어가 일치하는 검색 결과만 표시하려면 이 옵션을 사용합니다.

    • 위로 검색. 커서 위치에서 결과의 위로 검색하려면 이 옵션을 사용합니다.

    • 사용. 찾을 내용 상자에 입력한 특수 문자 및 정규식을 해석하려면 이 옵션을 사용합니다. 특수 문자에는 하나 이상의 문자를 나타내는 와일드카드 문자(*) 및 (?)가 포함됩니다. 정규식은 검색 텍스트의 패턴을 정의하는 데 사용하는 특수 표기입니다.

    • 찾을 내용 상자에 입력한 다음 텍스트를 검색하려면 다음 찾기를 클릭합니다.

책갈피

행으로 보다 쉽게 돌아갈 수 있도록 대상 데이터에서 하나 이상의 행에 책갈피를 지정할 수 있습니다. 책갈피를 변경하려면 행을 마우스 오른쪽 단추로 클릭합니다. 책갈피가 지정된 행으로 이동하려면 확장 이벤트 도구 모음에 있는 이전 및 다음 단추를 사용합니다.

표시 설정 변경

추적 결과의 열 정보(열 순서, 병합 열 및 열 너비) 및 필터 정보를 확장 이벤트의 표시 설정 파일(.viewsetting 파일)에 저장할 수 있습니다. 파일을 저장한 후 추적 결과에 이 파일을 적용하여 뷰를 변경할 수 있습니다.

표시 설정을 변경하려면

  1. .XEL 파일을 열고 추적 결과를 확인합니다. 세션 이름을 마우스 오른쪽 단추로 클릭하고 라이브 데이터 감시를 선택할 수도 있습니다.

  2. 확장 이벤트 도구 모음에서 표시 설정을 선택합니다. 드롭다운 목록에서 다음 옵션 중 하나를 선택합니다.

    • 다른 이름으로 저장: 추적 결과의 열 및 필터 정보를 .viewsetting 파일에 저장합니다.

    • 열기: 기존 .viewsetting 파일을 엽니다.

    • 최근 파일 열기: 최근에 저장한 .viewsetting 파일을 엽니다.

추적 결과 복사 또는 내보내기

추적 결과에서 선택한 행으로 셀, 행 및 세부 정보를 복사할 수 있습니다. 추적 결과를 다음 대상으로 내보낼 수도 있습니다.

  • .XEL 파일

  • 테이블

  • .CSV 파일

추적 결과를 복사하려면 셀 또는 행을 선택하고 마우스 오른쪽 단추를 클릭한 다음 복사를 선택하고 , 또는 자세히를 선택합니다. 확장 이벤트는 최대 1,000개의 행 복사를 지원합니다.

SQL Server Management Studio의 확장 이벤트 메뉴 옵션에서 내보낼 위치를 선택하여 추적 결과를 .XEL 파일, 테이블 또는 .CSV 파일로 내보낼 수 있습니다.

교착 상태 그래프 및 쿼리 계획 보기

세부 정보 창에서 xml_deadlock_report에 대한 교착 상태 그래프를 보면 교착 상태 문제를 손쉽게 해결할 수 있습니다. 다음 이벤트에 대한 쿼리 계획 그래프도 볼 수 있습니다.

  • query_post_compilation_showplan

  • query_pre_execution_showplan

  • query_post_execution_showplan

교착 상태 그래프를 보려면

  • 개체 탐색기에서 관리, 확장 이벤트, 세션 노드를 차례로 확장합니다.

  • 보려는 구성된 교착 상태 이벤트가 포함된 세션을 마우스 오른쪽 단추로 클릭하고 라이브 데이터 감시를 선택합니다.

  • 교착 상태 이벤트를 선택하고 세부 정보 창의 교착 상태 탭에서 그래프를 봅니다.

쿼리 계획 그래프를 보려면

  1. 개체 탐색기에서 관리, 확장 이벤트, 세션 노드를 차례로 확장합니다.

  2. 보려는 쿼리 계획 그래프(예: query_post_compilation_showplan)가 포함된 세션을 마우스 오른쪽 단추로 클릭한 다음 라이브 데이터 감시를 선택합니다.

  3. 쿼리 계획 그래프 이벤트(예: query_post_compilation_showplan)를 선택하고 세부 정보 창의 쿼리 계획 탭에서 그래프를 봅니다.