다음을 통해 공유


클라이언트 진단 로깅 구성 방법

Unified Service Desk 클라이언트 진단 로깅을 구성하는 방법은 두 가지가 있습니다.

  • Microsoft Dataverse의 Unified Service Desk 영역에서 만들고 관리되는 감사 및 진단 설정 레코드를 사용합니다.

  • UnifiedServiceDesk.exe.config 파일을 수동으로 변경. 이 파일은 Unified Service Desk 클라이언트 진단 로깅을 원하는 모든 데스크톱에 배포해야 합니다.

    또한 Unified Service Desk 클라이언트에서 발생할 수 있는 예외에 대한 진단 로깅을 구성할 수 있습니다.

Unified Service Desk 클라이언트 진단 로깅 구성

이 섹션에서는 Unified Service Desk에서 진단 로깅을 수동으로 구성하는 방법을 설명합니다. 여기에서 설명하는 절차를 사용하는 대신 중앙 집중식 진단 관리와 사용자 지정 수신기에 연결하는 기능을 제공하는 감사 및 진단 설정 기능을 사용하는 것이 좋습니다. 추가 정보: Unified Service Desk에서 감사 및 진단 구성

중요

  • 수동으로 구성된 진단(여기에서 설명)은 진단을 위해 구성된 감사 및 진단 설정 레코드를 활성화한 후에는 더 이상 작동하지 않습니다.
  • Unified Service Desk는 또한 사용자 지정 호스팅된 컨트롤에 대한 풍부한 진단 로깅을 구성하는 데 사용할 수 있는 API를 제공합니다. 자세한 정보: 사용자 지정 호스팅된 컨트롤에 대한 향상된 진단 로깅 구성

이 항목에서는 클라이언트 로깅 특성을 변경하는 방법을 설명합니다.

UnifiedServiceDesk.exe.config 파일을 사용하여 로깅을 활성화할 수 있으며 사용자 컴퓨터의 Unified Service Desk 클라이언트 설치 디렉터리에서 사용할 수 있습니다. Unified Service Desk 로그 파일의 로깅 유형과 위치를 구성하려면:

  1. 편집을 위해 UnifiedServiceDesk.exe.config 파일을 엽니다. 기본 위치에 Unified Service Desk 클라이언트를 설치한 경우 이 파일의 위치는 일반적으로 C:\Program Files\Microsoft Dynamics 365 Customer Engagement USD\USD입니다.

  2. 파일에서 <switches> 섹션으로 이동합니다.

    <switches>  
    <!--   
         Possible values for switches: Off, Error, Warning, Information, Verbose  
            Verbose:      includes Error, Warning, Info, Trace levels  
            Information:  includes Error, Warning, Info levels  
            Warning:      includes Error, Warning levels  
            Error:        includes Error level  
     -->  
        <add name="EventTopicSwitch" value="Error"/>  
        <add name="Microsoft.Uii.Common.Logging" value="Error"/>  
        <add name="Microsoft.Xrm.Tooling.CrmConnectControl" value="Error"/>  
        <add name="Microsoft.Xrm.Tooling.Connector.CrmServiceClient" value="Error"/>  
        <add name="Microsoft.Xrm.Tooling.WebResourceUtility" value="Error"/>  
        <add name="Microsoft.Crm.UnifiedServiceDesk" value="Error"/>  
        <add name="Microsoft.Crm.UnifiedServiceDesk.Dynamics" value="Error"/>  
        <add name="Microsoft.Crm.UnifiedServiceDesk.CommonUtility.UserProfileManager" value="Error"/>  
        <add name="UnifiedServiceDesk.KPIControl" value="Error"/>  
    </switches>  
    
    
  3. <switches> 섹션에서 로깅 소스(예: EventTopicSwitch)를 지정한 다음 로깅 수준 값(예: Error)을 지정합니다. <switches> 섹션은 다양한 소스의 로깅 수준을 제어합니다. 기본적으로 오류 로그는 모든 스위치에 사용됩니다.

    • 사용 가능한 로깅 소스에 대한 자세한 내용은 이 항목 뒷부분의 사용 가능한 로그 소스를 참조하십시오.

    • 각 로깅 소스에 대해 지정할 수 있는 값에 대한 자세한 내용은 이 항목 뒷부분의 로깅 수준을 참조하십시오.

  4. 로그 파일의 위치, 최대 파일 크기 및 롤오버 동작을 구성하려면 파일의 <shareListeners> 섹션으로 이동합니다.

    <sharedListeners>  
       <add name="fileListener"  
          type="Microsoft.Xrm.Tooling.Connector.DynamicsFileLogTraceListener, Microsoft.Xrm.Tooling.Connector"  
        BaseFileName="UnifiedServiceDesk"  
        Location="LocalUserApplicationDirectory" MaxFileSize ="52428800" MaxFileCount="10"/>  
       <add name="USDDebugListener" type="Microsoft.Crm.UnifiedServiceDesk.Dynamics.UsdTraceListener, Microsoft.Crm.UnifiedServiceDesk.Dynamics" />  
       <add name="ADALListener"  
        type="Microsoft.Xrm.Tooling.Connector.DynamicsFileLogTraceListener, Microsoft.Xrm.Tooling.Connector"  
        BaseFileName="ADAL"  
         Location="LocalUserApplicationDirectory" MaxFileSize ="52428800" MaxFileCount="10"/>  
    </sharedListeners>  
    

    <sharelisteners> 섹션은 Unified Service Desk에 대해 생성되는 로그의 위치와 유형을 제어합니다. 기본적으로 fileListenerc:\Users\<UserName>\AppData\Roaming\Microsoft\Microsoft\Microsoft Dynamics 365 Unified Service Desk\<Version> 디렉터리에 UnifiedServiceDesk.log라는 파일을 만들고, USDDebugListener는 디버거 호스팅된 컨트롤의 디버그 출력 탭에서 이벤트를 만듭니다.

  5. UnifiedServiceDesk.log 파일의 위치를 변경하려는 경우 Location 매개 변수의 값을 변경합니다.

  6. 기본적으로 새 Unified Service Desk 로그는 현재 로그 파일의 크기가 52.42MB를 초과하면 만들어집니다. 기본적으로 가장 오래된 로그 파일을 삭제하기 전에 최대 10개의 로그 파일이 한 번에 유지됩니다.

    • 최대 Unified Service Desk 로그 파일 크기를 변경하려면 MaxFileSize 매개 변수의 값을 바이트 단위로 변경합니다.

    • 가장 오래된 로그가 삭제되기 전에 유지되는 로그 수를 변경하려면 MaxFileCount의 값을 변경합니다. 0을 사용하는 경우 롤오버 로깅이 비활성화되고 모든 Unified Service Desk 클라이언트 로그가 저장됩니다.

  7. 기본적으로 파일과 디버거 로깅은 모든 소스에 사용됩니다. 진단 소스에서 수신기를 추가하거나 제거하려면 <sources> 섹션에서 필요한 소스를 찾은 다음 소스의 <listeners> 섹션을 수정하여 원하는 수신기를 포함합니다.

    예를 들어 Unified Service Desk에 대한 이벤트 로깅을 추가하려면 Microsoft.Crm.UnifiedServiceDesk 소스에 이벤트 로깅 수신기를 추가합니다.

    <source name="Microsoft.Crm.UnifiedServiceDesk" switchName="Microsoft.Crm.UnifiedServiceDesk" switchType="System.Diagnostics.SourceSwitch">  
        <listeners>  
            <add name="fileListener"/>  
            <add name="USDDebugListener" />  
            <add name="eventLogListener" type="System.Diagnostics.EventLogTraceListener" initializeData="USD"/>  
        </listeners>  
    </source>  
    

    그러면 이제 파일과 디버거 외에 태그가 “USD”인 Windows 이벤트 로그에 이벤트를 보고합니다. 진단 수신기에 대한 자세한 내용은 이 항목 뒷부분의 진단 로그 수신기를 참조하십시오.

진단 로그 소스

일반적인 문제 해결 로그 소스는 다음 표에 나열됩니다.

원본 이름 Description
EventTopicSwitch UII 내의 메시징 트래픽을 모니터링하기 위한 자세한 User Interface Integration(UII) 로깅 소스입니다.
Microsoft.Uii.Common.Logging UII에서 보고한 메시지에 대한 일반 UII 로그 소스입니다.
Microsoft.Xrm.Tooling.CrmConnectControl 로그인 프로세스의 로그 소스입니다. 이 소스는 로그인 절차에 대한 일반 또는 자세한 진단 정보를 보고합니다.
Microsoft.Xrm.Tooling.Connector.CrmServiceClient 모든 Dataverse 데이터 수준 상호 작용에 대한 로그 소스입니다. 이 소스는 Dataverse, 예외 및 타이밍을 사용하여 모든 상호 작용을 보고합니다.
Microsoft.Xrm.Tooling.WebResourceUtility Dataverse 인터페이스 링크를 통해 웹 리소스 데이터에 대한 요청의 로그 소스입니다.
Microsoft.Crm.UnifiedServiceDesk 핵심 Unified Service Desk 기능에 대한 로그 소스입니다. 이 로그 소스는 Unified Service Desk에 핵심인 작업과 이벤트를 보고합니다.
Microsoft.Crm.UnifiedServiceDesk.Dynamics Unified Service Desk 부트 스트랩과 로딩 프로세서에 대한 로그 소스입니다. 이 소스는 UII 및 Unified Service Desk를 초기화하고 시작하는 부분인 작업과 이벤트를 보고합니다.
Microsoft.Crm.UnifiedServiceDesk.CommonUtility.UserProfileManager UserProfile 시스템과 상호 작용하는 작업에 대한 로그 소스입니다. 캐싱 시스템의 일부입니다. 추가 정보: 에이전트 응용 프로그램을 위한 클라이언트 캐싱 구성

Unified Service Desk 내에서 문제 또는 정보의 문제 해결과 격리를 지원하기 위해 독립적으로 이러한 로그 소스를 각각 전환할 수 있습니다.

진단 로깅 수준

사용할 수 있는 로깅 수준은 여러 가지가 있습니다. 그러나 로깅 수준을 늘리면, 더 많은 데이터가 생성되고 로그 파일에 저장됩니다.

로그 수준 설명
해제 이 소스의 모든 이벤트가 비활성화됩니다.
오류 오류 이벤트만 보고합니다.
경고 오류 및 경고 이벤트를 보고합니다.
정보 오류, 경고 및 정보 이벤트를 보고합니다.
자세한 정보 표시 오류, 경고, 정보 및 자세한 이벤트를 보고합니다.
ActivityTracing 오류, 경고, 정보 및 자세한 이벤트, 활동 추적(메서드 이름)을 보고합니다. 참고: ActivityTracing은 일부 소스에서만 사용할 수 있습니다.
모두 시스템에서 발생한 모든 이벤트를 보고합니다.

진단 로그 수신기

진단 로그 수신기는 진단 로그 출력을 파일, 이벤트 로그 또는 기타 소스로 보내는 데 사용 됩니다. 기본적으로 모든 진단 소스는 기본(디버거) 및 파일(텍스트) 수신기 모두에 연결됩니다. Unified Service Desk의 진단 로깅에 대해 추가 로그 수신기를 구성할 수 있습니다. .NET 기본 수신기에 대한 자세한 내용은 다음을 참조하십시오.

진단 로그 파일 보기

기본적으로 진단 로그는 Unified Service Desk 클라이언트 응용 프로그램에 사용됩니다. 로그 파일인 UnifiedServiceDesk-<date>.log는 클라이언트 응용 프로그램에서 작동 오류를 기록하기 위해 클라이언트 컴퓨터의 c:\Users\<UserName>\\Roaming\Microsoft\Microsoft Dynamics 365 Unified Service Desk\<Version>에서 사용할 수 있습니다. 로그 파일은 클라이언트 응용 프로그램에서 오류가 처음 발생할 때 만들어집니다.

호스팅된 컨트롤에서 오류가 발생하는 경우 로그 파일에 기록된 정보는 예외 정보와 함께 예외를 발생시킨 원래 호스팅된 컨트롤 등의 예외에 대한 자세한 정보를 제공합니다. 예외를 발생시킨 전체 JavaScript 코드가 기록되지 않았는지 확인합니다. 잘못된 코드만이 예외에 대한 설명과 함께 기록됩니다.

기록된 샘플 예외 세부 정보는 다음과 같습니다.

Microsoft.Crm.UnifiedServiceDesk.Dynamics   Error   2   12/27/2016 11:54:15 AM  Origin:AppdomianUnhandledException, IsFatal:True  
Source: DemoControl  
Target: Void throwExceptionMethod()  
Exception: Exception in custom control  
StackTrace:   at DemoControl.USDControl.throwExceptionMethod()  
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)  
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)  
   at System.Threading.ThreadHelper.ThreadStart()  

Unified Service Desk 모니터링 프로세스

Unified Service Desk 모니터링 프로세스(usdmp.exe)는 지속적으로 Unified Service Desk의 상태를 모니터링하는 서비스이며, 기본적으로 응답하지 않아 Unified Service Desk를 무응답 상태로 만드는 모든 브라우저 프로세스 인스턴스를 5초 후에 종료합니다. 브라우저 프로세스 인스턴스가 응답하지 않지만 Unified Service Desk가 응답하는 경우 브라우저 프로세스 인스턴스는 종료되지 않습니다. 브라우저 프로세스 종료에 대한 처리 종료 임계값 전역 옵션의 지속 시간을 변경하는 방법에 대한 자세한 내용은 Unified Service Desk 옵션 관리를 참조하십시오.

오류 진단 보고

구성 요소, 응용 프로그램 또는 시스템 오류 중에 발생하는 상세하고 종합적인 로깅 및 보고를 통해 오류가 발생한 시기와 원인을 파악할 수 있습니다. 표준 진단 로깅 외에도 오류 진단 보고는 Unified Service Desk 클라이언트에서 예외가 발생할 때 시스템 및 응용 프로그램 상태 정보를 기록 합니다. 예외에 대한 자세한 내용은 Unified Service Desk가 응용 프로그램 및 시스템 오류를 처리하는 방법에서 찾을 수 있습니다.

예외 중에 만들어진 폴더 및 파일

예외가 발생하는 경우 오류 진단 보고는 DiagnosticsLogs_날짜 및 시간이라는 이름의 폴더를 로컬 컴퓨터에 만듭니다. 여기서 날짜 및 시간은 DiagnosticLogs_20170322_173643과 같이 년-월-일_시간 형식으로 나타납니다. DiagnosticsLogs 폴더 내에서 다음 폴더와 파일이 생성됩니다.

진단 파일 설명
UnifiedServiceDesk_날짜및시간.log Unified Service Desk 클라이언트가 실행 중일 때 생성되고 추가된 표준 진단 로그입니다. 파일에는 Unified Service Desk 클라이언트(UnifiedServiceDesk.exe)의 로깅 정보가 들어 있습니다. 현재 파일은 예외의 경우에 DiagnosticsLogs 폴더로 이동됩니다.
UnifiedServiceDeskMonitoring_날짜.log Unified Service Desk 클라이언트가 실행 중일 때 생성되고 추가된 표준 진단 로그입니다. Unified Service Desk 클라이언트의 상태를 모니터링하는 프로세스인 Unified Service Desk 모니터링 프로세스(usdmp.exe)에 대한 로깅 정보를 포함합니다. 현재 파일은 예외의 경우에 DiagnosticsLogs 폴더로 이동됩니다. 추가 정보: Unified Service Desk 모니터링 프로세스
Eventlogs(폴더) 치명적이거나 치명적이지 않는 예외가 발생한 경우에 만들어진 폴더입니다. Windows 시스템 및 응용 프로그램 이벤트 로그 및 오류 보고 텍스트 파일을 포함합니다.
ExitReport.txt 치명적이거나 치명적이지 않는 예외가 발생한 경우에 만들어진 종료 로그입니다. 컴퓨터 이름, Unified Service Desk 버전, 프로세스 ID, 종료 코드 및 종료 시간 등의 프로세스 상태 정보가 포함됩니다.
MachineHealthReport.txt 치명적이거나 치명적이지 않는 예외가 발생한 경우에 만들어진 종료 로그입니다. 컴퓨터 프로세서, 운영 체제, 모니터 세부 정보, 언어 및 브라우저 버전과 같은 시스템 상태 정보가 들어 있습니다.
ProcessReport.csv 치명적이거나 치명적이지 않는 예외가 발생한 경우에 만들어진 종료 로그입니다. 예외 시 시스템에서 실행되고 있던 모든 프로세스의 포괄적인 목록을 제공합니다.
RegistryLog.txt 치명적이거나 치명적이지 않는 예외가 발생한 경우에 만들어진 종료 로그입니다. Internet Explorer에 대한 Windows 레지스트리 하위 키의 텍스트 기반 복사본을 포함합니다.
UnifiedServiceDesk_processId_CrashDump_날짜및시간.dmp ManualDumpShortcut 전역 옵션 키보드 조합을 사용하여 처리되지 않은 치명적인 예외의 경우에만 만들어지거나 수동으로 호출됩니다. UnifiedServiceDesk.exe에 대한 전체 메모리 덤프 파일을 제공합니다. 덤프 파일을 보려면 Visual Studio 또는 다른 Windows 덤프 파일 보기 도구가 필요 합니다.

오류 진단 보고 구성

  1. Unified Service Desk 관리자에 로그인합니다.

  2. 고급 설정 아래에서 감사 및 진단을 선택합니다.

  3. + 새로 만들기를 선택하고 진단 구성을 클릭합니다.

  4. 추적, 모니터링 끝내기 및 진단 로그 폴더 위치와 같은 원하는 값을 선택하거나 입력합니다. 추가 정보: 진단

  5. 저장하고 닫기를 선택합니다.

참조 항목

Unified Service Desk에서 감사 및 진단 구성

Unified Service Desk에서 문제 해결을 위한 디버깅 지원

Unified Service Desk의 디버그 문제