Application Diagnostics에서 이벤트에 대한 작업
적용 대상: System Center 2012 R2 Operations Manager, System Center 2012 - Operations Manager, System Center 2012 SP1 - Operations Manager
경고에 대한 작업은 System Center 2012 - Operations Manager의 표준 작업입니다. .NET 응용 프로그램 모니터링에 대한 경고는 다른 경고를 통해 인식하게 되는 정보(예: 일반 정보 및 제품 지식)를 표시합니다. 그러나 .NET 응용 프로그램 경고는 경고 설명에 링크도 제공합니다. 이 링크는 Application Diagnostics에서 경고를 발생시키는 이벤트를 엽니다. 여기서 문제를 해결하고 문제 및 해결 방법을 확인하는 데 유용한 정보를 자세히 확인할 수 있습니다.
참고
응용 프로그램 성능 모니터링의 경고를 근본적으로 해결하려면 보통 응용 프로그램 원본 코드에 액세스해야 하고, 개발자의 입력이 필요할 수도 있습니다. Team Foundation Server 작업 항목 동기화 관리 팩을 설치하고 개발 팀에서 사용하는 Team Foundation Server에 경고를 전송할 수 있습니다. Team Foundation Server 작업 항목 동기화 관리 팩은 Team Foundation Server 작업 항목의 변경 내용 및 관련 Operations Manager 경고의 변경 내용을 추적하고 동기화합니다.
.NET 응용 프로그램 경고 통합
문제를 확인, 할당 및 해결하는 데 드는 시간을 줄이는 것이 Operations Manager에서 응용 프로그램 모니터링의 중심 목표입니다. 경고를 받으면 경고를 일으킨 대상(예: 응용 프로그램 또는 코드를 호스트하는 시스템)을 파악해야 하고, 해당 결론을 백업할 데이터를 표시할 수 있어야 하고, 문제를 해결할 담당자를 명확히 구분해야 합니다. 발생한 문제가 시스템 문제인지 확인하려면 이벤트 발생 당시 시스템의 상태를 파악해야 합니다. 근본적인 문제가 발생한 위치를 확인하려면 발생한 호출 체인을 파악해야 합니다. 더 자세히 조사하려면 대상 이벤트와 비슷한 이벤트 및 동시에 발생한 관련 이벤트를 비교해야 합니다. 이벤트 세부 정보, 성능 카운터 및 분산 체인을 함께 사용하면 먼저 이 문제를 알아봐야 하는 사람의 우선 순위를 쉽게 확인할 수 있습니다. 이 문제가 시스템 오류인 경우 호스트 시스템의 사용 가능한 리소스 또는 구성을 조정하여 호스트 수준에서 이 문제를 해결할 수 있습니다. 이 문제가 응용 프로그램 오류인 경우 오류가 발생한 라인을 따라 응용 프로그램 팀으로 이 문제를 보내야 합니다. Application Diagnostics에서 보기, 필터 및 설정을 사용하는 몇 가지 전략이 있으며, 이 전략을 사용하면 더 쉽게 근본적인 원인을 파악하고, 해결 방법을 찾고, 문제 해결에 참여해야 하는 사람을 파악할 수 있습니다.
경고에서 Application Diagnostics를 열려면
-
사용자가 구성한 특정 응용 프로그램 그룹과 관련된 경고에 응답하고 있으므로, 활성 경고 범위를 지정하고 응용 프로그램 그룹별로 경고를 보는 것이 도움이 됩니다.Operations Manager 콘솔의 탐색 창에서 모니터링 단추를 클릭하고, 응용 프로그램 모니터링과 .NET 모니터링을 차례로 확장하고, 모니터링하도록 구성했으며 조사할 경고가 발생한 응용 프로그램 그룹의 이름이 있는 폴더를 클릭한 후 활성 경고를 클릭합니다.
-
열려는 경고를 두 번 클릭합니다.
-
경고 속성 페이지의 경고 설명 창에서 링크를 클릭합니다. 그러면 Operations Manager의 새로운 모니터링 기능인 Application Diagnostics가 웹 브라우저에서 열립니다.이벤트 속성 탭에서 성능 메트릭, 호출 스택, 경고에 대한 컬렉션 메모 등의 정보를 확인할 수 있습니다. 탭에서 비슷한 이벤트, 관련 이벤트, 이벤트 체인 및 성능 카운터를 확인할 수 있습니다. 이런 내용은 응용 프로그램에 대해 발생한 성능 또는 예외 이벤트에 대한 자세한 정보입니다. 이와 같은 자세한 정보를 통해 문제가 응용 프로그램 자체에서 발생한 것인지, 웹 서비스에 대한 호출에서 발생한 것인지 아니면 데이터베이스에 대한 호출에서 발생한 것인지 여부를 쉽게 진단할 수 있습니다. 이벤트 속성 탭에 대한 자세한 내용은 성능 이벤트 정보를 참조하십시오. 이벤트 정보가 로드된 후 기본 창을 닫으려면 예를 클릭하면 됩니다.
참고
Application Diagnostics에 대한 링크는 경고 컨텍스트 탭에도 있습니다.
다음 절차에 따라 경고를 조사할 수 있습니다. IT 전문가는 대개 이벤트 속성, 성능 카운터 및 분산 체인 탭의 정보를 사용하여 발생한 상황을 파악하고, 시스템 문제가 문제를 일으킨 것인지 파악하고, 근본적인 원인이 발생하는 위치를 조사하려고 합니다. 개발자는 대개 분산 체인, 비슷한 이벤트 및 관련 이벤트 탭의 정보를 사용하여 코드 문제와 관련된 특정 컨텍스트를 이해해야 합니다.
Application Diagnostics에서 예외 이벤트 속성을 사용하여 문제를 해결하려면
-
조사 중인 예외 경고에 대한 Application Diagnostics 창에서 이벤트 속성 탭을 클릭하여 경고에 대한 핵심 세부 정보를 확인합니다. 이 탭은 경고 문제가 명확한지 확인할 수 있는 첫 번째 위치입니다. 이벤트 속성 페이지에서 확인할 수 있는 몇 가지 핵심 범주는 다음과 같습니다.
- **원본** 응용 프로그램 로드 및 응답 시간을 표시하려면 상단 왼쪽 모서리에 있는 **원본** 링크를 클릭합니다. 이 정보는 예외 이벤트가 실패한 상황의 시스템 로드를 표시합니다. 성능 카운터를 보고 시스템 상태를 더 평가하려면 원본 페이지에서 **추세 보고서** 탭을 클릭합니다. 이 응용 프로그램이 작동하는 컴퓨터를 확인하고 컴퓨터 간에 부하 분산이 있는지 알아보려면 **컴퓨터** 탭을 클릭합니다. 관련 호출의 분석 결과 또는 체인에서 이벤트가 발생한 위치를 확인하려면 **토폴로지** 탭을 클릭합니다. - **예외 체인** 예외 이벤트에 대해 표시됩니다. 예외 체인을 확장하여 발생한 실제 예외를 확인할 수 있습니다. - **예외 데이터** 예외 이벤트에 대해 표시되며, 예외와 관련된 클래스에 대해 설정된 매개 변수 및 변수를 표시합니다. - **스택** 호출 스택 또는 예외가 발생한 순서입니다. 실행 트리 보기에서 호출을 조사할 노드를 확장할 수 있습니다.**리소스 그룹 보기** 라디오 단추를 클릭하여 시간이 사용된 위치에 대한 개요를 표시합니다. 이 보기에서 문제가 있는 계층이나 문제가 발생한 위치에 대한 답을 찾을 수 있습니다. - **모듈 목록** 예외 이벤트에 대해 표시되며, 예외 발생 시 로드되는 모듈을 표시합니다. - **컬렉션 메모** 이벤트에 대한 모든 메모를 표시합니다.
팁 성능 이벤트, 비슷한 이벤트, 관련 이벤트, 분산 체인 및 성능 카운터에 대해 예외 이벤트의 경우와 동일한 단계를 사용하십시오.
Application Diagnostics에서 성능 이벤트 속성을 사용하여 문제를 해결하려면
-
조사 중인 성능 경고에 대한 Application Diagnostics 창에서 이벤트 속성 탭을 클릭하여 경고에 대한 핵심 세부 정보를 확인합니다. 이 탭은 경고 문제가 명확한지 확인할 수 있는 첫 번째 위치입니다. 성능 속성 페이지에서 확인할 수 있는 몇 가지 핵심 범주는 다음과 같습니다.
- **원본** 응용 프로그램 로드 및 응답 시간을 표시하려면 상단 왼쪽 모서리에 있는 **원본** 링크를 클릭합니다. 이 정보는 예외 이벤트가 실패한 상황의 시스템 로드를 표시합니다. 성능 카운터를 보고 시스템 상태를 더 평가하려면 원본 페이지에서 **추세 보고서** 탭을 클릭합니다. 이 응용 프로그램이 작동하는 컴퓨터를 확인하고 컴퓨터 간에 부하 분산이 있는지 알아보려면 **컴퓨터** 탭을 클릭합니다. 관련 호출의 분석 결과 또는 체인에서 이벤트가 발생한 위치를 확인하려면 **토폴로지** 탭을 클릭합니다. - **가장 느린 노드** 실행 트리 보기에서 가장 느린 노드의 목록이며 대개 응용 프로그램 성능 문제의 원인입니다. - **스택** 호출 스택 또는 예외가 발생한 순서입니다. 실행 트리 보기에서 호출을 조사할 노드를 확장할 수 있습니다.**리소스 그룹 보기** 라디오 단추를 클릭하여 시간이 사용된 위치에 대한 개요를 표시합니다. 이 보기에서 문제가 있는 계층이나 문제가 발생한 위치에 대한 답을 찾을 수 있습니다. - **컬렉션 메모** 이벤트에 대한 모든 메모를 표시합니다.
성능 카운터를 사용하여 시스템의 상태 문제를 해결하려면
-
핵심 성능 카운터의 테이블 또는 다이어그램을 표시하려면 성능 카운터 탭을 클릭합니다.
참고
15분의 성능 데이터가 모니터링되는 시스템에서 수집되어 캐시됩니다. 성능 또는 예외가 발생할 경우 성능 데이터가 이벤트와 함께 Operations Manager에 다시 전송됩니다.
-
정보에 포함할 성능 카운터에 대한 성능 카운터 확인란을 선택한 후 적용을 클릭합니다.
-
이 디스플레이의 정보를 사용하여 조사 중인 이벤트 발생 전후의 시스템 성능 상태를 평가합니다. 예를 들어, 성능이 이벤트 발생 시 일관되게 느려지는 경우 경고는 대개 시스템 성능 문제 때문입니다.
분산 체인을 사용하여 근본적인 문제를 찾으려면
-
분산 체인 탭을 클릭하여 호출 순서 즉, 이벤트가 속한 이벤트 체인을 확인합니다. 이러한 정보를 사용하면 응용 프로그램 또는 관련 응용 프로그램의 다른 이벤트가 조사 중인 이벤트에 영향을 주는 방법을 쉽게 이해할 수 있습니다.
-
분산 체인 보기에서 체인의 호출 또는 링크 중 하나를 클릭합니다. 동일한 개체에 대해 여러 이벤트가 있는 경우 연결 마법사가 열립니다. 이 마법사를 통해 이벤트 체인으로 상관 관계를 지정할 이벤트를 선택할 수 있습니다. 마법사를 시작하려면 다음을 클릭합니다.
참고
다음 페이지에서 이벤트와 연결할 때 선택하는 호출의 타임스탬프를 가져오십시오.
-
가능한 체인 이벤트 선택 페이지에서 조사할 이벤트를 선택합니다. 이상적으로는, 분산 체인 보기에서 선택한 호출과 가장 가까운 타임스탬프가 포함된 이벤트를 선택합니다.
-
다음에 표시되는 항목은 조사 중인 문제 종류에 따라 달라집니다. 예를 들어, 서버가 없는 트랜잭션을 선택한 경우 해당 이벤트에 대한 이벤트 속성 페이지로 이동할 수 있습니다. 이 페이지에서 서버 오류와 처음 조사하던 이벤트를 연결할 수 있습니다. 서버 오류이므로, 문제가 클라이언트 쪽이 아닌 서버 쪽에 있는 걸 알 수 있습니다. 선택한 이벤트의 그래프가 표시되며, 페이지 로드 시간의 측면에서 성능 이벤트를 분석할 수 있습니다.
-
이벤트 속성에서 서버 쪽 호출을 클릭하고 성능 카운터 탭을 클릭하면 자세한 내용을 확인할 수 있습니다.
비슷한 이벤트를 보고 문제를 해결하려면
-
비슷한 이벤트 탭을 클릭하여 비슷한 경고가 더 자주 발생했는지(즉, 응용 프로그램에 문제가 있는지) 확인합니다.
-
비슷한 이벤트를 필터링하는 방법은 몇 가지가 있습니다.비슷한 기준: 드롭다운 메뉴를 클릭하여 비슷한 이벤트를 그룹화하려는 방법 즉, 문제, 작업, 예외 클래스 또는 실패한 함수별을 선택합니다.시작 및 종료 입력란에서 비슷한 이벤트를 보려는 날짜 범위를 설정할 수 있습니다.비슷한 이벤트 탭을 사용하여 비슷한 경고가 더 자주 발생했는지(즉, 응용 프로그램에 문제가 있는지) 확인합니다.
- **문제별 필터링**은 동일한 종류의 비슷한 이벤트를 표시합니다. 예를 들어, 개체 참조가 개체의 인스턴스로 설정되지 않은 비슷한 이벤트를 모두 확인할 수 있습니다.**다이어그램 보기** 단추를 클릭하면 현재 문제의 총 이벤트 수와 다른 문제의 총 이벤트 수 비율을 확인할 수 있습니다. 이런 정보를 통해 특정 이벤트의 문제 강도를 쉽게 확인할 수 있습니다. 현재 비슷한 총 이벤트 중 많은 이벤트에 동일한 문제가 있는 경우 사용자가 받게 되는 경고 수를 줄이는 데 상당한 영향을 주므로 해결할 우선 순위가 높은 문제일 수 있습니다. - **작업별 필터링**은 비슷한 이벤트를 보안, 성능, 연결 및 응용 프로그램 오류의 양상으로 그룹화합니다.**다이어그램 보기** 단추를 클릭하면 이러한 양상 범주별로 비슷한 이벤트 수를 확인하고 문제가 관련될 수 있는 대상을 더욱 쉽게 파악할 수 있습니다. - **예외 클래스별 필터링**은 구성 중 이벤트의 이름을 지정하는 방법에 따라 비슷한 이벤트를 그룹화합니다. 아마도 이러한 이름은 해당 이벤트가 어떤 종류의 예외인지 쉽게 구분할 수 있도록 지정해야 할 것입니다(예: **System.NullReferenceException** 클래스). - **실패한 함수별 필터링**은 예외를 발생시키는 동일한 함수별로 비슷한 이벤트를 그룹화합니다. 즉, 진입 점에 문제가 있을 수 있습니다.
이들이 모두 비슷한 이벤트(정의에 따라 관련됨)라는 점에 유의하십시오. 이러한 필터를 사용하여 서로 관련된 방식을 정확히 파악할 수 있습니다. 따라서 비슷한 이벤트 필터를 사용하여 전체 이벤트 중 대부분이 확인 중인 이벤트와 동일한 문제를 포함하고, 성능 문제이고, 사용자가 구성한 예외 클래스에 속해 있으며, 비슷한 이벤트 중 절반은 동일한 실패 함수를 포함한다는 것을 알 수 있습니다. 작업: 함수가 함수 코드를 업데이트해야 하는 개발자에게 보내집니다.
관련 이벤트를 보고 문제를 해결하려면
-
관련 이벤트 탭을 클릭하여 시간을 기준으로 관련된 이벤트를 봅니다. 이러한 예외는 문제를 파악하기 위해 함께 조사해 볼 수 있는 다른 이벤트와 관련된 예외입니다.
-
목록의 이벤트에 대한 이벤트 정보를 보려면 설명 열의 링크를 클릭합니다.
관련 이벤트에서 특정 시간에 모든 이벤트의 응답 시간이 매우 느려지는 것을 확인할 수 있습니다. 이것은 코드가 아닌 시스템 문제를 나타낼 수 있으므로, IT 전문가가 해결하도록 전달해야 할 수 있습니다.