Compartir a través de


¿Qué datos están disponibles para las aplicaciones basadas en modelos?

Los datos de rendimiento relacionados con las cargas de página y las solicitudes de red salientes de la interfaz unificada (UCI) están disponibles para las aplicaciones basadas en modelo.

¿Qué tipo de cargas de página están disponibles?

Tipo Datos de rendimiento y diagnóstico disponibles
Carga del panel (UCI): navegador
Carga del panel (UCI): integrado
Carga del panel (UCI): aplicación móvil
Carga del panel (UCI): MailApp
Carga del panel (UCI): aplicación móvil
Carga de EditForm (UCI): navegador
Carga de EditForm (UCI): integrado
Carga de EditForm (UCI): MailApp
Carga del EditForm (UCI): aplicación móvil
Carga de EntityList (UCI): navegador
Carga de EntityList (UCI): integrado
Carga de EntityList (UCI): MailApp
Carga de EntityList (UCI): aplicación móvil
Aplicación de inicio - (UCI): explorador
Aplicación de inicio - (UCI): insertado
Aplicación de inicio - (UCI): MailApp
Aplicación de inicio - (UCI): aplicación móvil
Carga de QuickCreateForm - (UCI): explorador
Carga de QuickCreateForm (UCI): insertado
Carga de QuickCreateForm - (UCI): MailApp
Carga del QuickCreateForm (UCI): aplicación móvil
SaveForm Actualmente no está disponible
Acciones de CommandButton Actualmente no está disponible

¿Dónde están disponibles los datos de carga de la página?

Estos datos van a la tabla pageViews de Application Insights. Se registra una entrada cada vez que un usuario carga una página en la Interfaz unificada. Los datos registrados solo incluyen cargas "limpias". Las cargas cuya duración no se pueda medir con precisión navegación rápida, cambio de la aplicación, un mensaje de alerta no se incluirán. Por este motivo, recomendamos no utilizar estos datos para obtener cifras precisas relacionadas con el análisis de uso.

Hay otras propiedades en customDimensions que proporcionan más detalles sobre las cargas de la página Interfaz unificada. Por ejemplo, esta consulta devuelve los valores de todos los atributos en la tabla pageViews.

pageViews
| take 1

Tabla pageViews de Application Insights.

Los atributos de la tabla pageViews incluyen:

  • appModule: El nombre del módulo de la aplicación.
  • entityName: este atributo está presente cuando es relevante. Está disponible en tipos de página como EditForm, EntityList y Dashboards cuando están vinculados a una entidad. En algunos escenarios, el formulario no está vinculado a una entidad y el valor aparece como indefinido.
  • formId: formId identifica de forma única un formulario y se puede utilizar para correlacionar problemas que afecten a ese formulario específico.
  • hostType: Navegador/Aplicación móvil/Integrado
  • isBoot: ¿Es esta la primera carga de una sesión?
  • loadType
    • 0: Primera visita a un tipo de página en particular (por ejemplo, la primera visita a un formulario).
    • 1: Primera visita a una configuración en particular (por ejemplo, la primera visita al formulario de una cuenta).
    • 2: Primera visita a un registro en particular (por ejemplo, la primera visita a un registro de cuenta A2).
    • 3: Esta URL exacta se ha visitado anteriormente.
  • navigationOrigin: el tipo de página desde la que navegó el usuario.
  • networkConnectivityState: Si el dispositivo tiene una conexión.
  • pageName: el tipo de carga de la página.
  • serverConnectivityState: Si la aplicación está conectada al servidor.
  • syncRequestTime: el tiempo dedicado a la espera de solicitudes síncronas.
  • coldLatency: la primera estimación de latencia de red, que incluye el tiempo de protocolo de enlace SSL.
  • warmLatency: la estimación posterior de la latencia de la red, que es la latencia típica esperada para cada solicitud.
  • warmThroughput: el rendimiento estimado de la red, en Kbps.

Para eventos de Microsoft Dataverse, el campo Id. o operation_ParentId en Application Insights, es el id-solicitud-servicio-ms-x . El operationId se asigna al activityId en el back-end para fines de resolución de problemas y solicitudes de soporte técnico.

¿Qué tipo de datos están disponibles para las solicitudes de red saliente de UCI?

Estas son llamadas a otras dependencias realizadas por Interfaz unificada para representar una determinada página. Pueden ser llamadas salientes a Dataverse o a otras integraciones como Azure DevOps u Office. Utilice la siguiente consulta para obtener estos datos, que están disponibles en la tabla de dependencias de solicitudes de UCI:

dependencies
| where type == "UCI REQUEST"

La tabla de dependencias de solicitudes de UCI tiene los siguientes campos:

  • Nombre: La URL que invocada por la interfaz unificada.

  • Destino: Actualmente lo mismo que Nombre.

  • Correcto: Indica si la operación se realizó correcta o incorrectamente.

  • Id. de usuario: El id. de usuario de sistema de Dataverse del usuario que inició sesión.

  • Duración: duración de la llamada.

  • customDimensions: Contiene los siguientes atributos:

    SOLICITUD UCI de Application Insights.

    • appModule: El appModule que realiza la llamada.
    • bodySize: El tamaño de la respuesta, codificada y decodificada.
    • en caché: indica si la solicitud fue a la caché local o tuvo que ir al servidor. Esto no funciona como se esperaba si el usuario final estaba en el navegador Internet Explorer.
    • descargar: El tiempo necesario para descargar la respuesta.
    • espera: El tiempo en el que la solicitud estuvo esperando en la cola del navegador.
    • ttfb: el tiempo de espera de la respuesta inicial, también conocido como "tiempo hasta el primer byte". Este tiempo captura la latencia de un viaje de ida y vuelta al servidor además del tiempo de espera para que el servidor entregue la respuesta.
    • coldLatency: la primera estimación de latencia de red, que incluye el tiempo de protocolo de enlace SSL.
    • warmLatency: la estimación posterior de la latencia de la red, que es la latencia típica esperada para cada solicitud.
    • warmThroughput: el rendimiento estimado de la red, en Kbps.

Descubrir y analizar escenarios

¿Por qué algunos de mis usuarios experimentan lentitud en la Interfaz unificada?

Un escenario en el que el descubrimiento y el análisis pueden ser valiosos es cuando un usuario de una región (por ejemplo, Asia) informa que un formulario funciona con lentitud. Este usuario que está en Asia puede estar accediendo a un entorno u organización en Norteamérica. Los detalles muestran el tiempo total de carga además de la duración relacionada con la red. Es posible que esta sea una de las causas de la lentitud del rendimiento que percibe el usuario.

Puedes usar los atributos warmLatency, warmThroughput y coldLatency para comprender el desglose de dónde se gasta el tiempo en las cargas de página y otras solicitudes la Interfaz unificada, como se muestra en la siguiente imagen.

Lentitud de UCI de Application Insights.

En la solicitud anterior, la solicitud la Interfaz unificada tarda más que la solicitud de API (API web) de Dataverse real. El desglose en este caso es la duración de la llamada API de Dataverse (56 ms) más el valor de CustomDimensions.warmLatency (89 ms), que se suma a casi la duración de toda la operación (144 ms). El valor warmLatency es indicativo de lentitud para ese cliente en particular y puede ser un problema que puede analizar a nivel de usuario mediante la siguiente consulta:

dependencies
| where ['type'] == "UCI REQUEST"
| summarize avg(toint(customDimensions.warmLatency)), avg(toint(customDimensions.coldLatency)), avg(toint(customDimensions.warmThroughput)) by user_Id

pageViews
| summarize avg(toint(customDimensions.warmLatency)), avg(toint(customDimensions.coldLatency)), avg(toint(customDimensions.warmThroughput)) by user_Id

¿Puedo determinar cómo accede el usuario al sistema?

El atributo userAgent del campo customDimensions de la tabla de solicitudes de Application Insights tiene estos datos. Puede utilizar la siguiente consulta para obtener una descripción general de los distintos orígenes desde los que los usuarios acceden al sistema:

pageViews
| summarize count() by tostring(customDimensions.userAgent), user_Id

dependencies
| where ['type'] == "UCI REQUEST"
Cuando el valor customDimensions.userAgent comienza con ¿Desde dónde accede el usuario al sistema?
Mozilla Tipo del explorador, versión
aplicaciones lógicas de Azure Aplicaciones lógicas de Azure
PowerApps Power Apps
Microsoft Office Excel Office Excel
Portals Portals
DynamicsDataIntegration Integración de datos de Dynamics
XrmToolBox.exe XrmToolBox
PluginRegistration Registro de complementos
LogicAppsDesigner Logic Apps Designer
Apache-HttpClient Cliente HTTP de Apache
Microsoft Flow Power Automate
UnifiedServiceDesk Unified Service Desk
PostmanRuntime Postman
OfficeGroupsConnector Conector de grupos de Office
Microsoft.Data.Mashup Power Query
Apache-Olingo Apache Olingo
Dalvik Android
Jakarta Commons-Http Jakarta
Informatica Informatica
axios Axios
node-fetch NodeJS
LinkedInBot LinkedInBot

¿Cómo obtengo un recuento de los usuarios que acceden desde el navegador, el móvil o las aplicaciones integradas?

pageViews
| summarize count() by tostring(customDimensions.hostType)

La siguiente imagen muestra un ejemplo de conjunto de resultados de esta consulta.

Conjunto de resultados de ejemplo de Application Insights.

¿Cómo ajusto la consulta a un usuario específico?

pageViews
| where user_Id == "[userid]"
| summarize count() by tostring(customDimensions.hostType)

¿Cómo uso Application Insights con Monitor?

Azure Monitor ayuda en la resolución de problemas en tiempo real en una sesión desde el lado de la interfaz unificada. Las solicitudes de transacciones de un extremo a otro probablemente estarán disponibles en Application Insights. Para ver los registros de una acción determinada, anote el id. de actividad de una fila en la página de detalles del evento en Monitor. Puede encontrar los registro mediante la consulta siguiente:

union *
| where operation_Id contains "[ActivityIdHere]"

Monitor es una herramienta de depuración en tiempo real; sin embargo, es posible que los datos no estén disponibles en él durante algunas horas.

¿Por qué los usuarios tienen problemas con un formulario específico?

El usuario puede compartir su ID de sesión desde la sección Acerca de en Interfaz unificada para la organización específica.

Configuración > Acerca de.

Configuración > Acerca del id. de sesión.

Luego, puede usar este ID para encontrar problemas observando todas las actividades de esa sesión. Use la siguiente consulta:

union *
| where session_Id == '[sessionIdHere]'

¿Qué formularios se están utilizando en diferentes ubicaciones y cuál es el rendimiento de carga de los formularios en estas ubicaciones?

pageViews
| summarize avg(duration) by name, client_City, client_CountryOrRegion

¿Es el error una llamada de API externa y puedo explorar en profundidad la pila de errores para ayudar con la depuración?

La vista Navegador del panel de Errores contiene solicitudes salientes de la interfaz unificada. Las solicitudes que van a Dataverse o a la organización contienen la URL de la organización. Puede haber otras solicitudes dirigidas a otras URL (por ejemplo, en la siguiente imagen, la organización tiene una personalización que llama a dc.services.visualstudio.com). Puede consultar la transacción de un extremo a otro para examinar más a fondo los errores de estas llamadas salientes externas.

Examinar la vista del panel de errores.

¿Puedo configurar una alerta sobre el umbral de rendimiento para determinadas acciones del formulario? Cuando se reciba la alerta, ¿permitirá al creador diagnosticar y solucionar el problema?

Sí. Puede configurar alertas en Application Insights para supervisar el estado de su aplicación.