Business Connectivity Services의 진단 로깅 개요(SharePoint Server 2010)

 

적용 대상: SharePoint Server 2010

마지막으로 수정된 항목: 2016-11-30

클라이언트 또는 서버의 이벤트 로그 및 추적 로그를 사용하면 Microsoft SharePoint Server 2010을 실행 중인 서버 및 Microsoft Office 2010 클라이언트 응용 프로그램에서 Microsoft Business Connectivity Services와 관련된 문제를 해결할 수 있습니다. 또한 이벤트 로그 또는 추적 로그의 각 항목에는 클라이언트 또는 서버와 외부 데이터 원본 간의 문제를 추적하는 데 사용할 수 있는 작업 ID가 연결되어 있습니다.

참고

이 항목에서 설명한 로깅 방법 외에 Microsoft System Center Operations Manager 관리 팩을 사용하여 Microsoft Business Connectivity Services에 기반하는 솔루션을 모니터링할 수 있습니다. System Center Operations Manager 관리 팩을 구성하는 방법에 대한 자세한 내용은 Microsoft SharePoint 2010 제품 관리 팩(영문일 수 있음)(https://go.microsoft.com/fwlink/?linkid=184971&clcid=0x412)(영문일 수 있음)에서 제공되는 관리 팩 다운로드에 포함된 가이드를 참조하십시오.

이 문서의 내용

  • Business Connectivity Services의 진단 로깅

  • 작업 ID 정보

  • 서버에서의 진단 로깅

  • Office 2010 클라이언트에서의 진단 로깅

  • 예: 진단 로깅 사용

Business Connectivity Services의 진단 로깅

Microsoft Business Connectivity Services 기반 솔루션의 경우 진단 로깅은 SharePoint Server 2010을 실행하는 서버 및 Office 2010 클라이언트에서 모두 발생합니다. 로그에는 이벤트 로그와 추적 로그 두 가지가 있습니다. 두 로그 모두 Microsoft Business Connectivity Services에서 생성하는 진단 정보를 기록합니다. 이벤트 로그는 오류 메시지를 기록합니다. 추적 로그에는 스택 추적 및 정보 메시지 등의 보다 깊이 있는 정보가 포함됩니다. 일반적으로 추적 로그는 이벤트 로그보다 더 많은 세부 정보를 제공합니다.

기록되는 각 정보 항목은 고유한 GUID 값인 작업 ID를 포함합니다. 작업 ID 값은 항목에 대한 만들기, 업데이트 또는 삭제 작업이 발생할 때 외부 시스템으로 전송될 수도 있습니다. 작업 ID를 사용하면 서버 또는 클라이언트에서 외부 데이터 원본에 걸쳐 작업을 추적할 수 있습니다. 작업 ID에 대한 자세한 내용은 작업 ID 정보를 참조하십시오.

이벤트 로그 및 추적 로그에 대한 진단 로깅 수준을 설정할 수 있습니다. 이 설정을 통해 각 로그에 로깅할 정보의 유형과 양이 제한됩니다. 다음 표에는 이벤트 로그 및 추적 로그에 대해 사용 가능한 로깅 수준이 정의되어 있습니다.

이벤트 로그 수준

수준 정의

없음

로깅되지 않습니다.

위험

이 메시지 형식은 솔루션의 중대한 실패를 유발한 심각한 오류를 나타냅니다.

오류

이 메시지 형식은 긴급 상황을 나타냅니다. 모든 오류 이벤트를 조사해야 합니다.

경고

이 메시지 형식은 주의할 필요가 있는 잠재적 문제점을 나타냅니다. 경고 메시지를 검토 및 추적하여 일정 기간에 걸친 패턴을 확인해야 합니다.

정보

정보 메시지는 특정 작업을 필요로 하지는 않지만 솔루션 상태를 모니터링하는 데 유용한 데이터를 제공할 수 있습니다.

상세

이 이벤트 로그 수준은 긴 이벤트 또는 메시지에 부합됩니다.

추적 로그 수준

수준 정의

없음

추적 로그가 기록되지 않습니다.

예기치 않음

이 수준은 솔루션의 처리가 중지되도록 하는 이벤트에 대한 메시지를 로깅하는 데 사용됩니다. 이 수준에서 로깅하도록 설정되면 이 수준의 이벤트만 로그에 포함됩니다.

모니터링 가능

이 수준은 솔루션의 기능을 제한하지만 응용 프로그램을 중지시키지는 않는 복구 불가능한 이벤트에 대한 메시지를 로깅하는 데 사용됩니다. 이 수준에서 로깅하도록 설정되면 치명적 오류(예기치 않음 수준)도 로그에 포함됩니다.

높음

이 수준은 예기치 않지만 솔루션 처리를 중지시키지는 않는 이벤트를 로깅하는 데 사용됩니다. 이 수준에서 로깅하도록 설정되면 경고, 오류(모니터링 가능 수준) 및 치명적 오류(예기치 않음 수준)가 로그에 포함됩니다.

보통

이 수준으로 설정된 경우 추적 로그에는 상세 메시지를 제외한 모든 항목이 포함됩니다. 이 수준은 수행된 작업에 대한 상위 수준 정보를 모두 로깅하는 데 사용됩니다. 이 수준에서는 데이터 흐름 및 작업 시퀀스를 생성하는 데 필요한 세부 정보가 충분히 로깅됩니다. 이 로깅 수준은 문제 해결을 위해 관리자 또는 지원 전문가가 사용할 수 있습니다.

상세

이 수준에서 로깅하도록 설정되면 다른 모든 수준의 메시지가 로그에 포함됩니다. 이 수준을 사용할 경우 수행되는 작업은 거의 모두 로깅됩니다. 상세 추적은 많은 로그 메시지를 생성합니다. 일반적으로 이 수준은 개발 환경에서 디버깅을 위해 사용됩니다.

진단 로그는 개발 환경과 프로덕션 환경에서 모두 유용하지만 로깅 수준별 요구 사항은 환경의 유형에 따라 서로 다를 수 있습니다. Microsoft Business Connectivity Services에서의 진단 로깅을 계획할 경우에는 로깅 수준을 설정하기 전에 비즈니스 요구 및 환경의 수명 주기 단계를 고려하는 것이 좋습니다.

예를 들어 시스템 상태와 관련하여 생성되는 모든 메시지를 캡처하기 위해 솔루션 디자인 단계에서 디버깅 용도로 두 가지 로깅 수준을 상세로 설정할 수 있습니다. 이와 반대로 프로덕션 환경에서는 추적 로그의 경우 높음, 모니터링 가능 및 예기치 않음 범주의 메시지만 캡처하고 이벤트 로그의 경우 위험 및 오류 범주의 메시지만 캡처 할 수 있습니다. 이렇게 하면 로깅에 필요한 디스크 공간이 절약되고 로깅이 성능에 미치는 부정적 영향이 줄어듭니다.

작업 ID 정보

Microsoft Business Connectivity Services 기반 솔루션에서 외부 데이터에 대해 만들기, 업데이트 또는 삭제 작업이 수행될 때마다 각 작업에 대한 고유한 GUID 값(작업 ID라고도 함)이 서버 및 Office 클라이언트에서 생성됩니다. 추적 로그 또는 이벤트 로그에 기록되는 작업과 관련된 모든 항목은 해당하는 작업 ID값을 포함합니다.

중요

서버에 있는 이벤트 로그 및 추적 로그 파일에서 작업 ID 값에는 “CorrelationId” 값이라는 레이블이 지정됩니다.

만들기, 업데이트 또는 삭제 작업에 대해 생성된 작업 ID 값은 해당 작업과 관련된 다른 정보와 함께 외부 시스템으로 보내집니다. 외부 시스템에 로깅 메커니즘이 있는 경우 이 값은 해당 시스템에서 캡처 및 기록될 수 있습니다. 따라서 특정 작업에 의해 SharePoint 서버 또는 Office 클라이언트 로그에 새 항목이 기록되면 해당하는 작업 ID 값을 사용하여 외부 시스템에서도 동일한 작업을 추적할 수 있습니다. 이를 통해 문제를 종단 간에 걸쳐 해결할 수 있습니다.

만들기 등의 작업에 의해 여러 이벤트가 로그에 기록되는 경우도 종종 있습니다. 이 경우 해당 작업과 관련하여 로깅되는 모든 이벤트에 대해 동일한 작업 ID 값이 사용됩니다. 이와 같이 작업 ID 값이 반복적으로 사용되기 때문에 특정 작업과 관련된 모든 이벤트를 쉽게 찾을 수 있다는 점에서 문제 해결에 도움을 줍니다. 반대로, 동일한 유형의 작업이 반복적으로 발생할 경우 각 작업 인스턴스별로 고유한 작업 ID 값이 생성됩니다. 예를 들어 외부 콘텐츠 형식의 항목이 두 번 업데이트되면 각 업데이트 작업은 고유한 작업 ID 값과 연결됩니다.

외부 시스템에 연결하지 못한 경우 Business Data Connectivity 서비스는 상황에 따라 작업을 다시 시도할 수 있습니다. 이러한 경우 다시 시도되는 작업에 대해 동일한 작업 ID가 사용됩니다.

서버에서의 진단 로깅

기본적으로 Microsoft Business Connectivity Services 로깅은 SharePoint Server 서버에서 사용되도록 설정됩니다. 기본 로깅 수준은 다음과 같습니다.

  • 이벤트 로그: 위험 및 오류

  • 추적 로그: 보통

Microsoft Business Connectivity Services의 진단 로깅이 사용되지 않도록 설정되어 있으면 SharePoint Server 중앙 관리의 진단 로깅 페이지에서 Business Connectivity Services를 선택하여 진단 로깅이 사용되도록 설정합니다. 또는 Windows PowerShell을 사용하여 서버의 이벤트 로그 및 추적 로그를 구성할 수도 있습니다. 예를 들어 로그가 기록될 드라이브를 변경하고 로깅의 자세한 정도를 설정할 수 있습니다.

로그 파일의 위치 설정 방법을 비롯하여 SharePoint Server에서의 로깅에 대한 자세한 내용은 진단 로깅 구성(SharePoint Server 2010)을 참조하십시오.

Windows PowerShell을 사용하여 서버의 이벤트 로그를 확인하고 스프레드시트 프로그램 등으로 로그를 내보낼 수 있습니다. 자세한 내용은 진단 로그 보기(SharePoint Server 2010)를 참조하십시오.

Microsoft Business Connectivity Services는 SharePoint Server 프런트 엔드 웹 서버의 추적 로그에 두 가지 범주, 즉 BDC_Shared_ServicesSS_Shared_Service를 출력합니다. 이벤트 뷰어를 사용하여 추적 로그를 열고 "SPS_BusinessData"(Microsoft Business Connectivity Services 출력의 경우) 및 “SPS_SecureStoreService”를 검색하여 관련 로그 항목을 필터링할 수 있습니다.

Office 2010 클라이언트에서의 진단 로깅

Microsoft Business Connectivity Services 솔루션의 이벤트 로그 및 추적 로그는 Microsoft Business Connectivity Services 인프라를 사용하는 Microsoft Office 2010 제품군 클라이언트에서 사용할 수 있습니다. 클라이언트에서 Microsoft Business Connectivity Services의 이벤트 로깅은 기본적으로 사용되도록 설정됩니다. 그러나 성능 저하를 막기 위해 오류와 치명적 오류만 기록되고 이 설정은 변경할 수 없습니다. Windows 클라이언트 컴퓨터는 이벤트 로그를 보는 데 사용할 수 있는 이벤트 뷰어를 포함합니다. 특정 Windows 버전에 대한 이벤트 로그를 보는 방법에 대한 자세한 내용은 제품 설명서를 참조하십시오.

클라이언트 컴퓨터에서는 성능 향상을 위해 추적 로깅이 기본적으로 사용되지 않도록 설정됩니다. 진단하려는 문제가 발생한 경우에만 클라이언트 컴퓨터에서 추적 로깅이 사용되도록 설정해야 합니다. 예를 들어, Microsoft Business Connectivity Services와 관련된 작업으로 인해 오류가 발생했을 수 있음을 이벤트 로그 항목이 나타내는 경우 이벤트가 다음에 발생할 때 추가 데이터를 수집하기 위해 추적 로깅이 사용되도록 설정합니다.

추적 로깅이 사용되도록 설정하고 로그를 읽기 위한 방법은 컴퓨터에 설치된 Windows 버전에 따라 달라집니다. 예를 들어, Windows XP를 실행하는 컴퓨터에서는 logman 명령을 사용하는 스크립트를 실행하여 추적이 사용되도록 설정합니다. Windows Vista 이상에서는 logman 명령 외에 Performance and Reliability Monitor 같은 시스템 도구를 사용할 수 있습니다. 추적이 사용되도록 설정하는 방법 및 결과를 캡처하는 방법에 대한 세부 정보는 Windows 제품 설명서를 참조하십시오.

아래의 예제 스크립트에서는 logman 명령을 사용하여 추적 로깅이 사용되도록 설정합니다.

rem This script will enable logging, directing log messages to a file specified by the "%FILE_NAME%" given by the user.

@setlocal
@echo off
pushd %~dp0
set PATH_NAME=%TEMP%\BCS
set FILE_NAME=%PATH_NAME%\ETWTraceLog
set TRACE_COLLECTION=BCS
::tracelog -start BCS -guid #b8622a02-c377-46b1-b861-38a787a8e44a -b 128 -flags 0xFFFF -level 5 -f "%FILE_NAME%.etl"
md "%PATH_NAME%" 1>nul 2>nul
logman create trace %TRACE_COLLECTION% -p "{b8622a02-c377-46b1-b861-38a787a8e44a}" 0xFFFF 5 -o "%FILE_NAME%.etl" -ets
echo.
echo Business Connectivity Services tracing has been started. To end press any key.
echo.
pause

서버에서와 마찬가지로 클라이언트에서도 항목에 대한 만들기, 업데이트 또는 삭제 작업 각각에 대해 고유한 작업 ID 값이 생성됩니다. 이러한 값은 로그에 기록되어 작업과 관련된 다른 정보와 함께 외부 시스템으로 보내집니다. 또한 작업 ID 값이 오류 메시지에 표시되도록 솔루션을 구성할 수 있습니다. 이렇게 하면 솔루션 사용자가 발생한 문제를 해결하는 데 도움이 됩니다.

중요

작업 ID 생성의 기반이 되는 Windows용 이벤트 추적 프로그래밍 인터페이스의 필요한 버전을 Windows XP 운영 체제에서는 사용할 수 없기 때문에 Windows XP를 실행하는 클라이언트에서 작업 ID 생성은 지원되지 않습니다.

예: 진단 로깅 사용

간략한 이 시나리오에서는 진단 로깅이 프로덕션 환경에서 어떻게 사용되는지 보여 줍니다. 이 시나리오에서 기업은 Microsoft Business Connectivity Services에 기반하는 새로운 근무 시간 기록표 제출 솔루션을 배포했습니다. 이 솔루션에서는 외부 시스템을 사용하여 휴가 및 병가 같은 직원의 근무 시간 기록표 정보를 저장하고, 직원이 결근을 보고할 경우 해당 직원 및 급여 지급 시스템과 상호 작용합니다. 직원은 웹 파트를 사용하여 이 시스템과 상호 작용합니다.

서버 팜에서 로깅 수준이 Microsoft Business Connectivity Services에 대한 기본값으로 설정되어 있습니다.

  • 이벤트 로그: 위험 및 오류

  • 추적 로그: 보통

이 시나리오에서 직원은 병가 시간에 해당하는 숫자 값을 제출하지만 직원과 관리자 모두 병가 시간이 성공적으로 제출되었음을 알려 주는 확인 전자 메일 메시지를 받지 못합니다. 직원은 내부 기술 지원 서비스 부서에 전화를 걸어 이 문제를 보고합니다.

지원 기술자는 근무 시간 기록표 응용 프로그램이 Microsoft Business Connectivity Services를 기반으로 한다는 것을 알고 있습니다. 지원 기술자는 이벤트 로그를 검토하지만 사용자가 근무 시간 기록표 요청을 제출한 시점에 사용자의 ID와 연결된 오류가 없다는 것을 발견합니다. 그런 다음 추적 로그를 검토하여 작업, 즉 해당 시간에 사용자와 관련되어 있는 업데이트 작업의 증거를 찾아냅니다. 추적 로그에서 업데이트 작업은 지원 기술자가 발견한 작업 ID 값을 포함하고 있습니다.

지원 기술자는 외부 시스템에서도 로깅이 지원되고 있음을 알고 있습니다. 작업 ID를 사용하여 외부 시스템에 로깅된 항목을 찾고, 업데이트 작업의 종료 시점에 로그에 기록된 오류의 증거를 발견합니다. 업데이트 실패 이유는 할당된 병가 시간을 직원이 모두 사용했기 때문입니다. 또한 기술 전문가는 업데이트 작업 종료 직후에 외부 시스템에서 전자 메일 메시지가 생성되었음을 확인해 주는 로그 항목이 없다는 것을 알게 됩니다. 따라서 기술 전문가는 근무 시간 기록표 응용 프로그램의 논리에 오류가 있다는 결론에 이르게 됩니다. 이 응용 프로그램은 할당된 시간을 초과한 직원에게 병가 급여를 지급하지 않았다는 점에서는 올바르게 작동했지만 직원에게 이 문제를 알려 주는 전자 메일 메시지를 생성하지 못했습니다. 기술 전문가는 응용 프로그램을 만든 개발 팀에 이 문제를 보고하고 개발 팀은 응용 프로그램을 업데이트합니다.

See Also

Concepts

모니터링 개요(SharePoint Server 2010)
진단 로깅 구성(SharePoint Server 2010)
Business Connectivity Services 개요(SharePoint Server 2010)