Как можно настроить журнал диагностики клиента

Существует два способа настроить ведение журнала диагностики клиента в Unified Service Desk:

  • С помощью записи "Настройки аудита и диагностики", создание и управление которой осуществляется в области Unified Service Desk на платформе Microsoft Dataverse.

  • Путем внесения изменений в файл UnifiedServiceDesk.exe.config вручную. Этот файл, затем необходимо распространить на все компьютеры, где требуется ведение журнала диагностики клиента Unified Service Desk.

    Кроме того, ведение журнала диагностики можно настроить специально для исключений, которые могут возникнуть в клиенте Unified Service Desk.

Настройка ведения журнала диагностики клиента в Unified Service Desk

В этом разделе описывается, как настраивать ведение журнала диагностики в Unified Service Desk вручную. Вместо использования описанной здесь процедуры рекомендуется пользоваться функцией "Настройки аудита и диагностики", которая обеспечивает возможность централизованного администрирования диагностики и подключения пользовательского прослушивателя. Дополнительные сведения: Настройка аудита и диагностики в Unified Service Desk

Внимание

В этом разделе описывается порядок изменения характеристик ведения журналов клиента.

Ведение журнала включается с помощью файла 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. По умолчанию fileListener создаст файл с именем UnifiedServiceDesk.log в папке c:\Users\<UserName>\AppData\Roaming\Microsoft\Microsoft\Microsoft Dynamics 365 Unified Service Desk\<Version>, а USDDebugListener будет создавать события во вкладке вывода отладки размещенного элемента управления «Отладчик».

  5. Если требуется изменить расположение файла UnifiedServiceDesk.log, измените значение параметра Location.

  6. По умолчанию новый журнал Unified Service Desk создается после того, как размер текущего файла журнала превысит 52,42 МБ. По умолчанию одновременно можно вести до 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>  
    

    В результате события помимо файла и элемента «Отладчик» будут регистрироваться в журнале событий Windows с тегом «USD». Дополнительные сведения о прослушивателях диагностики см. в пункте Прослушиватели журнала диагностики далее в этом разделе.

Источники журнала диагностики

В следующей таблице перечислены общие источники журнала для устранения неполадок.

Имя источника Description
EventTopicSwitch Источник ведения подробных журналов User Interface Integration (UII) для мониторинга трафика сообщений внутри 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 см. по следующим ссылкам:

  • MSDN:DefaultTraceListener

  • MSDN:EventLogTraceListener

  • MSDN:TextWriterTraceListener

    Можно также создать пользовательские прослушиватели для отправки журналов диагностики в указанное вами место. Пользовательские прослушиватели создаются с помощью класса, производного от абстрактного класса MSDN:TraceListener. Пошаговое руководство по этому процессу можно найти на веб-сайте CodeGuru.com.

Просмотр файла журнала диагностики

По умолчанию ведение журналов диагностики включено для клиентского приложения Unified Service Desk. Файл журнала UnifiedServiceDesk-<дата>.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 продолжает отвечать на запросы, работа экземпляра процесса браузера не прекращается. Дополнительные сведения о том, как изменить длительность глобального параметра ProcessTerminationThreshold для прекращения процессов браузера, см. в разделе Управление параметрами 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 (usdmp.exe), который отслеживает работоспособность клиента Unified Service Desk. Текущие файлы переносятся в папку DiagnosticsLogs в случае исключения. Дополнительные сведения: Процесс мониторинга Unified Service Desk
Eventlogs (папка) Папка, создаваемая в случае неустранимого или устранимого исключения. Содержит журналы событий системы Windows и приложений и текстовые файлы отчетов об ошибках.
ExitReport.txt Журнал выхода, создаваемый в случае неустранимого или устранимого исключения. Содержит сведения о состоянии процесса, например имя компьютера, версию Unified Service Desk, код процесса, код выхода и время выхода.
MachineHealthReport.txt Журнал выхода, создаваемый в случае неустранимого или устранимого исключения. Содержит сведения о состоянии системы, такие как процессор компьютера, операционная система, сведения отслеживания, язык и версия браузера.
ProcessReport.csv Журнал выхода, создаваемый в случае неустранимого или устранимого исключения. Содержит подробный список всех процессов, которые выполнялись в системе в момент исключения.
RegistryLog.txt Журнал выхода, создаваемый в случае неустранимого или устранимого исключения. Включает текстовую копию подразделов реестра Windows для Internet Explorer.
UnifiedServiceDesk_processId_CrashDump_дата_и_время.dmp Создается только в случае необработанного неустранимого исключения или при вызове вручную с помощью сочетания клавиш глобального параметра ManualDumpShortcut. Предоставляет полный файл дампа памяти для UnifiedServiceDesk.exe. Обратите внимание, что для просмотра файла дампа требуется Visual Studio или другое средство просмотра файлов дампа Windows.

Настройка отчетности о диагностике ошибок

  1. Выполните вход в приложение администратора Unified Service Desk.

  2. Выберите Аудит и диагностика в разделе Дополнительные параметры.

  3. Выберите + Создать и выберите DiagnosticsConfiguration.

  4. Выберите или введите требуемые значения, такие как отслеживание, мониторинг выхода и расположение папки журналов диагностики. Дополнительные сведения: Диагностика

  5. Выберите Сохранить и закрыть.

См. также

Настройка аудита и диагностики в Unified Service Desk

Поддержка отладки в Unified Service Desk для устранения неполадок

Вопросы отладки в Unified Service Desk