Log Parser Studio 소개

최초 문서 게시일: 2012년 3월 8일 목요일

Log Parser 2.2를 정기적으로 사용하신다면 IIS(Internet Information Server) 및 기타 로그에서 유용한 정보를 가져오는 데 Log Parser가 매우 유용하고 효율적임을 알고 계실 것입니다. 또한 SQL의 기능을 추가하면 GB 단위의 대형 로그를 명시적으로 검색하여 필요한 데이터만 반환하고 그렇지 않은 데이터는 필터링하여 제외할 수도 있습니다. 그러나 오랜 시간을 투자하여 작성한 효율적인 쿼리 및 스크립트를 모두 관리하기 위한 Log Parser의 프런트 엔드이자 '쿼리 라이브러리' 역할을 하는 효율적인 GUI(그래픽 사용자 인터페이스)는 제공되지 않는 것이 아쉬운 점입니다.

Log Parser Studio는 이러한 요구를 충족하기 위해 작성되었습니다. 즉, Log Parser 2.2 사용자 및 인터페이스가 제공되지 않아 Log Parser 2.2를 사용하지 않는 분들이 보다 효율적이고 신속하게 작업을 수행하여 필요한 데이터를 얻고 스크립트 사용 및 쿼리 저장 폴더의 수를 줄일 수 있도록 합니다.

Log Parser Studio(간단하게 LPS로 지칭함)를 사용하면 모든 쿼리를 중앙 위치에 저장할 수 있습니다. '쿼리 편집기'에서 새 쿼리를 작성 및 편집하고 나중에 사용하기 위해 저장할 수 있습니다. 또한 자유 텍스트 검색을 통해 쿼리를 검색하고 라이브러리와 쿼리를 서로 다른 형식으로 내보내고 가져올 수 있으므로 공동 작업이 간편해지며, 각 프로토콜에 대해 여러 개별 라이브러리 형식을 저장할 수 있습니다.

Exchange 프로토콜의 로그 처리

각 Exchange 프로토콜의 로그를 처리하는 작업에 시간이 많이 걸린다는 것은 누구나 알고 계실 것입니다. 특수 용도의 도구가 없는 경우 Exchange 관리자는 로그 간을 전환하면서 Log Parser나 기타 도구를 사용하여 로그를 일일이 처리해야 합니다(출력 형식이 중요한 경우). 또한 SQL 쿼리 작성과 관련한 전문 지식도 습득해야 하며, 웹에서 제공되는 특수 용도의 스크립트를 사용해 출력을 분석하여 긴 로그에서 필요한 내용을 파악해야 합니다. Log Parser Studio는 기본적으로 Exchange 프로토콜의 서로 다른 로그를 빠르고 쉽게 처리하도록 설계되었습니다. Log Parser Studio를 시작하면 Microsoft Exchange ActiveSync(MAS), EWS(Exchange 웹 서비스), Outlook Web App(OWA/HTTP) 등 각 Exchange 프로토콜에 해당하는 탭이 표시됩니다. 이러한 탭 아래에는 특수한 용도에 사용할 수 있도록 작성되었으며 클릭 한 번으로 간단하게 실행할 수 있는 여러 SQL 쿼리가 표시됩니다. 쿼리의 설명 및 기타 특징 역시 기본 UI에서 제공됩니다.

그러면 Log Parser Studio의 몇 가지 유용한 기능에 대해 살펴보겠습니다.

쿼리 라이브러리 및 관리

LPS를 시작하면 첫 화면에는 쿼리가 미리 로드된 쿼리 라이브러리(Query Library) 가 표시됩니다. 쿼리 라이브러리에서는 모든 쿼리를 관리합니다. 라이브러리(Library) 탭을 클릭하여 언제든지 라이브러리를 사용할 수 있습니다. 다양한 방법을 통해 검토 또는 실행할 쿼리를 로드할 수 있습니다. 가장 쉬운 방법은 목록에서 쿼리를 선택한 다음 두 번 클릭하는 것입니다. 이렇게 하면 쿼리가 자체 쿼리(Query) 에서 자동으로 열립니다. 쿼리 라이브러리(Query Library) 는 쿼리의 홈으로, LPS에서 유지 관리하는 모든 쿼리가 이 라이브러리에 저장됩니다. 간편한 컨트롤을 통해 원하는 쿼리를 빠르게 찾아서 나중에 신속하게 액세스할 수 있도록 즐겨찾기로 표시할 수 있습니다.

이미지

라이브러리 복구

LPS와 함께 제공되는 초기 라이브러리는 응용 프로그램에 포함되며 설치 시 작성됩니다. 라이브러리가 삭제, 손상 또는 손실된 경우에도 라이브러리 복구 기능(옵션(Options) | 라이브러리 복구(Recover Library))을 통해 쉽게 원본으로 다시 설정할 수 있습니다. 라이브러리를 복구하면 모든 기존 쿼리가 삭제됩니다 . 사용자 지정 쿼리나 수정한 쿼리가 손실되지 않도록 하려면 먼저 해당 쿼리를 내보내고 기본 쿼리 집합을 복구한 후에 다시 LPS로 병합하면 됩니다.

가져오기/내보내기

필요에 따라 전체 라이브러리 또는 라이브러리의 하위 집합을 기본 LPS XML 형식 또는 SQL 쿼리로 가져오고 내보낼 수 있습니다. 예를 들어 특정 폴더에 Log Parser SQL 쿼리가 다수 포함되어 있는 경우 해당 쿼리 중 일부 또는 모든 쿼리를 LPS 라이브러리로 가져올 수 있습니다. 일반적으로 가져오기 후에는 몇 가지 조정 작업만 수행하면 됩니다. LPS에 필요한 것은 기본 SQL 쿼리뿐이며, ‘[로그 파일 경로]’ 및/또는 ‘[출력 파일 경로]’를 사용하여 파일 이름 참조를 바꾸면 됩니다. 이에 관해서는 도구에 포함된 PDF 설명서 에 자세히 설명되어 있습니다. LPS | 도움말(Help) | 설명서(Documentation) 를 통해 이 설명서에 액세스할 수 있습니다.

쿼리

효율적으로 작성된 구조적 쿼리를 사용하면 필요한 정보만 간략하게 반환하는 효율적인 쿼리를 수행할 수 있으며, 그렇지 않으면 시스템에 무리를 주고 실제로 필요한 것보다 훨씬 많은 정보를 반환하며 경우에 따라 응용 프로그램 작동을 중지시킬 수도 있는 비효율적 쿼리가 수행됩니다.

이미지

이 게시물에서는 효율적인 SQL/Log Parser 쿼리를 작성하는 방법에 대해서는 설명하지 않습니다. LPS에 포함된 모든 쿼리는 가장 간략한 결과를 제공하는 동시에 가장 적은 레코드를 반환하도록 작성되었습니다. 원하는 정보 및 반환되는 행 수를 최소화하여 해당 정보를 얻는 방법을 파악해야 합니다.

일괄 작업 및 다중 스레딩

LPS와 Log Parser 2.2를 함께 사용하면 매우 유용합니다. 그러나 쿼리를 한 번에 하나만 실행하고 결과를 기다리는 경우 작업 시간이 오래 걸릴 수 있습니다. 이번 LPS에는 일괄 작업 및 다중 스레딩 쿼리가 모두 포함되어 있습니다.

일괄 작업은 단추 하나만 누르면 모두 함께 실행할 수 있는 미리 정의된 쿼리 모음입니다. 일괄 처리 관리자(Batch Manager) 에서 단일 쿼리 또는 모든 쿼리를 제거할 수도 있고 실행할 수도 있습니다. 또한 일괄 처리 관리자(Batch Manager) 에서 여러 쿼리 실행(Run Multiple Queries) 단추나 실행(Execute) 단추를 클릭하여 쿼리를 실행할 수도 있습니다. 쿼리를 실행하면 LPS에서 일괄 처리의 각 쿼리를 준비 및 실행합니다. 기본적으로 LPS는 각 쿼리가 준비되는 즉시 모든 쿼리를 Log Parser 2.2로 보내며, 이 시점에서 다중 스레딩 기능이 작동합니다. 예를 들어 쿼리 50개가 일괄 작업으로 설정된 상태에서 해당 작업을 실행하면 백그라운드에서 50개 스레드가 모두 Log Parser에서 동시에 작동하므로 사용자가 다른 쿼리 작업을 계속할 수 있습니다. 각 작업이 완료되면 결과가 쿼리 유형에 따라 표 또는 CSV 출력으로 다시 전달됩니다. 이 시나리오에서도 다른 쿼리, 검색, 수정 및 실행을 계속할 수 있습니다. 각 쿼리가 완료되면 해당 스레드는 사용 중지되고 해당 리소스는 해제됩니다. 이러한 스레드는 백그라운드에서 매우 효율적으로 관리되므로 여러 쿼리를 한 번에 실행해도 문제가 없습니다.

이미지

성능 또는 기타 이유로 일괄 처리의 쿼리를 동시에 실행하려는 경우도 있는데, 해당 기능은 LPS 옵션에 이미 기본적으로 포함되어 있습니다. LPS | 옵션(Options) | 기본 설정(Preferences) 에서 ' 일괄 처리 쿼리를 순서대로 처리(Process Batch Queries in Sequence) ' 확인란을 선택하여 설정을 변경하면 됩니다. 이 확인란을 선택하면 일괄 처리의 첫 번째 쿼리가 실행되고 두 번째 쿼리는 첫 번째 쿼리가 완료될 때까지 시작되지 않습니다. 이 프로세스는 일괄 처리의 마지막 쿼리가 실행될 때까지 계속됩니다.

자동화

자동화는 일괄 작업과 함께 일괄 작업의 무인 예약 자동화를 가능하게 합니다. 예를 들어 선택한 일괄 작업(다른 사용자 지정 폴더 집합에 대해서도 작동함)을 자동으로 실행하는 예약된 작업을 만들 수 있습니다. 이 프로세스에는 폴더 목록 파일(.FLD)과 일괄 처리 목록 파일(.XML)의 두 가지 구성 요소가 필요합니다. 이러한 구성 요소는 LPS 내에서 미리 만듭니다. 이 작업을 수행하는 방법에 대한 자세한 내용은 설명서를 참조하십시오.

차트

결과 표(Result Grid) 에 데이터를 반환하는 대부분의 쿼리는 기본적으로 제공되는 차트 작성 기능을 사용하여 차트로 만들 수 있습니다. 차트에 대한 기본적인 요구 사항은 아래와 같이 Log Parser 2.2와 동일합니다.

  1. 표의 첫 열은 문자열, 숫자 등 모든 데이터 형식일 수 있습니다.
  2. 두 번째 열은 정수, double, 10진수 등 특정 숫자 형식이어야 하며 문자열은 사용할 수 없습니다.

쿼리를 직접 작성하는 경우 이 요구 사항을 염두에 두고 2열에 숫자를 포함하도록 쿼리를 작성해야 합니다. 차트를 생성하려면 쿼리가 완료된 후 차트 단추를 클릭합니다. 쿼리 작성 시 수행하지 않은 경우 위의 2번 요구 사항을 충족하기 위해 숫자가 포함된 열을 끌어 2열에 놓으면 됩니다. 이렇게 하면 숫자가 포함된 열이 여러 개인 경우 원하는 열을 2열로 끌어서 같은 데이터로 다른 차트를 만들 수 있습니다. 차트 작성 기능에 대한 자세한 내용 역시 설명서를 참조하십시오.

이미지

바로 가기 키/명령

LPS에서는 여러 바로 가기 키가 기본적으로 제공됩니다. LPS 사용 중에 LPS | 도움말(Help) | 바로 가기 키(Keyboard Shortcuts) 를 클릭하여 언제든지 해당 목록을 확인할 수 있습니다. 현재 포함되어 있는 바로 가기는 다음과 같습니다.

바로 가기 기능
Ctrl+N 새 쿼리를 시작합니다.
Ctrl+S 포커스가 있는 위치에 따라 라이브러리 또는 쿼리(Query) 탭의 활성 쿼리를 저장합니다.
Ctrl+Q 라이브러리 창을 엽니다.
Ctrl+B 라이브러리에서 선택한 쿼리를 일괄 처리에 추가합니다.
Alt+B 일괄 처리 관리자(Batch Manager)를 엽니다.
Ctrl+B 선택한 쿼리를 일괄 처리에 추가합니다.
Ctrl+D 현재 활성 쿼리를 새 탭으로 복제합니다.
Ctrl+Alt+E 오류 로그(있는 경우)를 엽니다.
Ctrl+E 현재 선택되어 있는 쿼리 결과를 CSV로 내보냅니다.
Alt+F 라이브러리에서 선택한 쿼리를 즐겨찾기 목록에 추가합니다.
Ctrl+Alt+L 원시 라이브러리를 사용 가능한 첫 번째 텍스트 편집기에서 엽니다.
Ctrl+F5 디스크에서 라이브러리를 다시 로드합니다.
F5 활성 쿼리를 실행합니다.
F2 라이브러리에서 현재 선택한 쿼리의 이름/설명을 편집합니다.
F3 IIS 필드 목록을 표시합니다.

지원되는 입력 및 출력 형식

Log Parser 2.2에는 여러 로그 형식을 쿼리하는 기능이 있습니다. LPS는 여전히 개발 중인 상태이므로 현재는 가장 많이 사용되는 형식만 제공됩니다. 추가 입력 및 출력 형식은 이후 버전 또는 업데이트에서 가능한 경우 추가될 예정입니다.

지원되는 입력 형식

W3SVC/IIS, CSV, HTTP 오류가 완전하게 지원되며 모든 기본 제공 Log Parser 2.2 입력 형식이 기본적으로 지원됩니다. 또한 기본 Log Parser 2.2 설치에서는 제공되지 않는 Microsoft Exchange 관련 형식 등 사용자 지정 작성 LPS 형식도 일부 지원됩니다.

지원되는 출력 형식

현재 지원되는 출력 파일 형식은 CSV 및 TXT입니다.

Log Parser Studio - 빠른 시작 가이드

세부 사항을 확인하지 않고 쿼리를 바로 실행하려면 아래 내용을 확인하십시오.

Log Parser Studio를 사용할 때 가장 먼저 확인해야 하는 사항은 로그 파일의 위치 및 결과를 CSV 파일로 내보내는 쿼리를 저장할 기본 위치입니다.

1. 기본 CSV 출력 경로를 설정합니다.

a. LPS | 옵션(Options) | 기본 설정(Preferences) | 기본 출력 경로(Default Output Path)로 이동합니다.

b. 내보낸 결과용으로 사용할 폴더를 찾아서 선택합니다.

c. 적용(Apply) 을 클릭합니다.

d. CSV 파일을 내보내는 모든 쿼리는 이 폴더에 저장됩니다.
참고 : 시작하기 전에 이 경로를 설정하지 않으면 CSV 파일은 기본적으로 %AppData%\Microsoft\Log Parser Studio에 저장되지만 이 경로를 다른 위치로 이동하는 것이 좋습니다.

2. 로그 파일 관리자(Log File Manager) 를 열어 로그 파일의 위치를 지정합니다. 이 단계를 완료하기 전에 쿼리를 실행하면 LPS에서 로그 경로를 설정하라는 메시지가 표시됩니다. 해당 메시지에서 확인(OK)을 클릭하면 로그 파일 관리자(Log File Manager) 가 표시됩니다. 폴더 추가(Add Folder) 를 클릭하여 폴더를 추가하거나 파일 추가(Add File) 를 클릭하여 파일을 하나 또는 여러 개 추가합니다. 폴더를 추가할 때도 LPS에서 작업 대상 로그 형식을 확인할 수 있도록 파일을 하나 이상 선택해야 합니다. 이렇게 하면 LPS는 선택한 파일을 해당 폴더에서 일치하는 모든 로그를 검색함을 나타내는 와일드카드(*.xxx)로 자동 변환합니다.

Log Parser Studio 오른쪽 아래의 상태 표시줄을 확인하면 현재 검색 중인 폴더 또는 파일을 쉽게 파악할 수 있습니다. 전체 경로를 보려면 상태 표시줄 위에 마우스를 놓습니다.

참고 : LPS 및 Log Parser는 쿼리 가능한 여러 로그 및 개체 유형을 처리합니다. 따라서 쿼리하는 로그의 유형이 수행하는 쿼리와 일치해야 합니다. 즉, IIS 로그가 필요한 쿼리를 실행할 때는 파일 관리자(File Manager)에서 IIS 로그만 선택해야 합니다. 이를 간과하는 사용자가 많은데, 이렇게 하지 않으면 쿼리 실행 시 오류가 발생하거나 예기치 않은 동작이 반환됩니다 .

3. 라이브러리에서 쿼리를 선택하여 실행합니다.

a. 라이브러리(Library) 탭이 선택되어 있지 않으면 클릭합니다.

b. 목록에서 쿼리를 선택하고 두 번 클릭합니다. 그러면 쿼리가 자체 탭에서 열립니다.

c. 단일 쿼리 실행(Run Single Query) 단추를 클릭하여 쿼리를 실행합니다.

쿼리 실행은 백그라운드에서 시작됩니다. 쿼리가 완료되고 나면 두 개의 출력 대상이 표시될 수 있는데, 그 중 하나는 쿼리(Query) 탭 위쪽에 표시되는 결과 표이고 다른 하나는 CSV 파일입니다. 일부 쿼리의 결과는 표에 반환되고 메모리를 더 많이 사용하는 기타 쿼리의 결과는 CSV에 저장됩니다.

일반적으로는 매우 큰 결과 집합을 반환하는 쿼리는 Excel에서 추가로 처리할 수 있도록 CSV 파일로 제공되는 것이 가장 효율적입니다. 결과가 반환되고 나면 다양한 기능을 통해 해당 결과에 대한 작업을 수행할 수 있습니다. 자세한 내용은 설명서를 참조하십시오.

Log Parser Studio에서 쿼리를 효율적으로 실행하시기 바랍니다.

Kary Wall
에스컬레이션 엔지니어
Microsoft Exchange 지원 팀

이 문서는 번역된 블로그 게시물입니다. 원본 문서는 Introducing: Log Parser Studio를 참조하십시오.