Oharra
Baimena behar duzu orria atzitzeko. Direktorioetan saioa has dezakezu edo haiek alda ditzakezu.
Baimena behar duzu orria atzitzeko. Direktorioak alda ditzakezu.
Utilice el seguimiento para solucionar problemas de un complemento o de una actividad personalizada de flujo de trabajo (código personalizado). El seguimiento ayuda a los desarrolladores mediante la grabación de información en tiempo de ejecución, lo que ayuda a diagnosticar la causa de errores de código. El seguimiento admite la ejecución sincrónica o asincrónica.
Un servicio denominado ITracingService registra la información de seguimiento en tiempo de ejecución para Microsoft Dataverse. El código personalizado puede proporcionar información a este servicio, que se puede registrar en tres lugares diferentes:
Registro de seguimiento
El sistema escribe registros de seguimiento en la tabla PluginTraceLog. La configuración de seguimiento mencionada en Habilitar registro de seguimiento controla la escritura de estos registros.
Para encontrar estos datos en aplicaciones controladas por modelos, vaya a Configuración y elija el icono Registro de seguimiento del complemento . El icono solo está visible si el rol de seguridad asignado concede acceso a los registros de la tabla de registro de seguimiento.
Es posible que le resulte más fácil ver estos datos mediante la API web en el explorador, como se muestra en el ejemplo de Uso de seguimiento o mediante la herramienta de comunidad Visor de seguimiento de complementos .
Importante
El registro de seguimiento ocupa espacio de almacenamiento de la organización, especialmente cuando genera muchos seguimientos y excepciones. Active solo el registro de seguimiento para la depuración y la solución de problemas y desactive cuando haya terminado.
Diálogo de errores
Un complemento sincrónico registrado o una actividad personalizada de flujo de trabajo que devuelve una excepción de la plataforma genera un cuadro de diálogo de error en la aplicación web, que se muestra al usuario que ha iniciado sesión. El usuario puede seleccionar el botón Descargar archivo de registro en el cuadro de diálogo para ver el registro que contiene la excepción y la salida de seguimiento.
Trabajo del sistema
En el caso de los complementos registrados asincrónicos o las actividades de flujo de trabajo personalizadas que devuelven una excepción, la información de seguimiento aparece en el área Detalles del formulario Tarea del sistema de la aplicación web.
Habilitar registro de seguimiento
El que los registros de seguimiento se escriban depende del valor de la columna PluginTraceLogSetting de la tabla Organization. Puede habilitar el registro de seguimiento actualizando mediante programación el valor PluginTraceLogSetting.
Un segundo método para habilitar el registro de seguimiento es a través de la aplicación web heredada. Vaya a Configuración>Administración>Configuración del sistema. En la pestaña Personalización, busque el menú desplegable con la etiqueta Habilitar el registro en el registro de seguimiento del complemento y seleccione una de las opciones disponibles. Para obtener más información, consulte Configuración en aplicaciones de interfaz unificada y Configuración en aplicaciones cliente web heredadas.
Una tercera opción se puede encontrar en la herramienta Registro de complementos. Después de conectar la herramienta a su organización (entorno), seleccione Configuración>Registro en el registro de seguimiento del complemento y luego seleccione una de las opciones disponibles.
| valor | Opción | Descripción |
|---|---|---|
| 0 | Desactivado | La escritura en el registro de seguimiento está deshabilitada. No se creará ningún registro de PluginTraceLog. Sin embargo, el código personalizado puede seguir llamando al método Trace(String, Object[]) aunque no se escriba ningún registro. |
| 1 | Excepciones | La información de seguimiento se escribe en el registro si el código personalizado devuelve una excepción a la plataforma. |
| 2 | Todo | La información de seguimiento se escribe en el registro cuando finaliza la ejecución del código o se devuelve una excepción a la plataforma desde el código personalizado. |
Si el valor del registro de seguimiento se establece en Excepción y el código personalizado devuelve una excepción a la plataforma, se crea un registro de seguimiento y también se escribe información de seguimiento en otra ubicación. Para código personalizado que se ejecuta forma sincrónica, la información se muestra al usuario en un cuadro de diálogo de errores, de lo contrario, para código asincrónico, la información se escribe en el trabajo del sistema relacionado.
Escribir en el servicio de rastreo
Antes de escribir en el servicio de seguimiento, primero debe extraer el objeto del servicio de seguimiento del contexto de ejecución proporcionado. A continuación, añada llamadas a Trace(String, Object[]) en su código personalizado donde corresponda, incluyendo en esa llamada al método cualquier información de diagnóstico pertinente.
//Extract the tracing service for use in debugging plug-ins.
ITracingService tracingService =
(ITracingService)serviceProvider.GetService(typeof(ITracingService));
// Use the tracing service
tracingService.Trace("Write your message here.");
A continuación, genere e implemente el complemento o actividad de flujo de trabajo personalizada. Durante la ejecución del código personalizado, la información proporcionada en las llamadas al método Trace se escribe en un registro de la tabla de registro de seguimiento mediante ITracingService, si su organización lo admite y está habilitado, y también podría ponerse a disposición del usuario en un cuadro de diálogo web o en una tarea del sistema, como se describe en la sección anterior. La información de seguimiento que se escribe en el registro de seguimiento se configura en la configuración de seguimiento. Para obtener más información, consulte Habilitar el registro de seguimiento.
Nota
Si el código personalizado se ejecuta en una transacción de la base de datos y se produce una excepción que provoca una reversión de la transacción, todos los cambios en los datos de la tabla realizados por el código se desharán. Sin embargo, los registros PluginTraceLog siguen ahí una vez completada la reversión.
Información adicional sobre el servicio de seguimiento.
Procesa ITracingService por lotes la información que recibe a través del método Trace . Escribe la información en un nuevo registro PluginTraceLog después de que el código personalizado se ejecute correctamente o produzca una excepción.
Cada llamada Trace se registra como una nueva línea en la columna PluginTraceLogMessageBlock. Solo puede escribir 10 KB de texto. Para cumplir este límite, el sistema quita las líneas de seguimiento anteriores para que solo se guarden las líneas más recientes.
Los registros PluginTraceLog tienen una duración finita. Un trabajo en segundo plano de eliminación en masa se ejecuta una vez al día para eliminar los registros que tienen más de 24 horas desde su creación. Para evitar un crecimiento excesivo de la base de datos, Microsoft podría deshabilitar el registro en el registro de seguimiento del complemento si la tabla plugintracelogbase supera los 100 GB de tamaño.
Precaución
Aunque puede deshabilitar este trabajo o ajustar la frecuencia con la que se produce, si no se puede volver a establecer en la configuración original, puede causar problemas de rendimiento.
Herramientas de la Comunidad
Visor de seguimiento de complementos
Plugin Trace Viewer es una herramienta desarrollada por la comunidad XrmToolBox. Para obtener herramientas desarrolladas por la comunidad, consulte el artículo Herramientas de la comunidad para Dataverse .
Nota
Microsoft no proporciona compatibilidad con las herramientas de la comunidad. Si tiene alguna pregunta sobre la herramienta, póngase en contacto con el publicador. Para obtener más información, vea XrmToolBox.
Consulte también
Complementos
Depurar un complemento
Ver registros de seguimiento
Servicio de seguimiento
Tabla PluginTraceLog