Compartir a través de


Identificación y diagnóstico de problemas en Azure Virtual Desktop (clásico)

Importante

Este contenido se aplica a Azure Virtual Desktop (clásico), que no admite objetos de Azure Resource Manager de Azure Virtual Desktop. Si está intentando administrar objetos de Azure Virtual Desktop de Azure Resource Manager, consulte este artículo.

Azure Virtual Desktop ofrece una característica de diagnóstico que permite al administrador identificar problemas a través de una sola interfaz. Los roles de Azure Virtual Desktop registran una actividad de diagnóstico cada vez que un usuario interactúa con el sistema. Cada registro contiene información relevante, como los roles de Azure Virtual Desktop implicados en la transacción, los mensajes de error, la información del inquilino y la información del usuario. Las actividades de diagnóstico se crean mediante acciones administrativas y de usuario final, y se pueden clasificar en tres cubos principales:

  • Actividades de suscripción de canales: el usuario final inicia estas actividades siempre que intente conectarse a su canal a través de aplicaciones de Escritorio remoto de Microsoft.
  • Actividades de conexión: el usuario final desencadena estas actividades siempre que intente conectarse a un escritorio o RemoteApp a través de aplicaciones de Escritorio remoto de Microsoft.
  • Actividades de administración: el administrador desencadena estas actividades siempre que realizan operaciones de administración en el sistema, como la creación de grupos de hosts, la asignación de usuarios a grupos de aplicaciones y la creación de asignaciones de roles.

Las conexiones que no llegan a Azure Virtual Desktop no se mostrarán en los resultados de diagnóstico porque el propio servicio de rol de diagnóstico forma parte de Azure Virtual Desktop. Los problemas de conexión de Azure Virtual Desktop pueden producirse cuando el usuario final está experimentando problemas de conectividad de red.

Para empezar, descargue e importe el módulo de PowerShell de Azure Virtual Desktop para usar en la sesión de PowerShell si aún no lo ha hecho. Después, ejecute el siguiente cmdlet para iniciar sesión en su cuenta:

Add-RdsAccount -DeploymentUrl "https://rdbroker.wvd.microsoft.com"

Diagnóstico de problemas con PowerShell

Diagnósticos de Azure Virtual Desktop usa solo un cmdlet de PowerShell, pero contiene muchos parámetros opcionales para ayudar a reducir y aislar problemas. En las secciones siguientes se enumeran los cmdlets que puede ejecutar para diagnosticar problemas. La mayoría de los filtros se pueden aplicar juntos. Los valores enumerados entre corchetes, como <tenantName>, deben reemplazarse por los valores que se aplican a su situación.

Importante

La característica de diagnóstico es para la solución de problemas de un solo usuario. Todas las consultas que usan PowerShell deben incluir los parámetros -UserName o -ActivityID. Para las funcionalidades de supervisión, use Log Analytics. Consulte Use Log Analytics para la característica de diagnóstico para obtener más información sobre el envío de datos de diagnóstico a su espacio de trabajo.

Filtrado de actividades de diagnóstico por usuario

El parámetro -UserName devuelve una lista de actividades de diagnóstico iniciadas por el usuario especificado, como se muestra en el siguiente cmdlet de ejemplo.

Get-RdsDiagnosticActivities -TenantName <tenantName> -UserName <UserUPN>

El parámetro -UserName también se puede combinar con otros parámetros de filtrado opcionales.

Filtrar las actividades de diagnóstico por tiempo

Puede filtrar la lista de actividades de diagnóstico proporcionada con los parámetros -StartTime y -EndTime. El parámetro -StartTime devolverá una lista de actividades de diagnóstico a partir de una fecha específica, como se muestra en el ejemplo siguiente.

Get-RdsDiagnosticActivities -TenantName <tenantName> -UserName <UserUPN> -StartTime "08/01/2018"

El parámetro -EndTime se puede agregar a un cmdlet con el parámetro -StartTime para especificar un período de tiempo específico para el que desea recibir resultados. El cmdlet de ejemplo siguiente devolverá una lista de actividades de diagnóstico desde el 1 de agosto hasta el 10 de agosto.

Get-RdsDiagnosticActivities -TenantName <tenantName> -UserName <UserUPN> -StartTime "08/01/2018" -EndTime "08/10/2018"

Los parámetros -StartTime y -EndTime también se pueden combinar con otros parámetros de filtrado opcionales.

Filtrar las actividades de diagnóstico por tipo de actividad

También puede filtrar las actividades de diagnóstico por tipo de actividad con el parámetro -ActivityType. El siguiente cmdlet devolverá una lista de conexiones de usuario final:

Get-RdsDiagnosticActivities -TenantName <tenantName> -UserName <UserUPN> -ActivityType Connection

El siguiente cmdlet devolverá una lista de tareas de administración de administrador:

Get-RdsDiagnosticActivities -TenantName <tenantName> -ActivityType Management

El cmdlet Get-RdsDiagnosticActivities no admite actualmente la especificación de Feed como ActivityType.

Filtrado de actividades de diagnóstico por resultado

Puede filtrar la lista de actividad de diagnóstico devuelta por resultado con el parámetro -Outcome. El cmdlet de ejemplo siguiente devolverá una lista de actividades de diagnóstico correctas.

Get-RdsDiagnosticActivities -TenantName <tenantName> -UserName <UserUPN> -Outcome Success

El siguiente cmdlet de ejemplo devolverá una lista de actividades de diagnóstico con errores.

Get-RdsDiagnosticActivities -TenantName <tenantName> -Outcome Failure

El parámetro -Outcome también se puede combinar con otros parámetros de filtrado opcionales.

Recuperación de una actividad de diagnóstico específica por identificador de actividad

El parámetro -ActivityId devuelve una actividad de diagnóstico específica si existe, como se muestra en el siguiente cmdlet de ejemplo.

Get-RdsDiagnosticActivities -TenantName <tenantName> -ActivityId <ActivityIdGuid>

Visualización de mensajes de error de una actividad con error por identificador de actividad

Para ver los mensajes de error de una actividad con errores, debe ejecutar el cmdlet con el parámetro -Detailed. Puede ver la lista de errores ejecutando el cmdlet Select-Object .

Get-RdsDiagnosticActivities -TenantName <tenantname> -ActivityId <ActivityGuid> -Detailed | Select-Object -ExpandProperty Errors

Recuperación de actividades de diagnóstico detalladas

El parámetro -Detailed proporciona detalles adicionales para cada actividad de diagnóstico devuelta. El formato de cada actividad varía en función de su tipo de actividad. El parámetro -Detailed se puede agregar a cualquier consulta Get-RdsDiagnosticActivities, como se muestra en el ejemplo siguiente.

Get-RdsDiagnosticActivities -TenantName <tenantName> -ActivityId <ActivityGuid> -Detailed

Escenarios de error comunes

Los escenarios de error se clasifican en interno al servicio y externo a Azure Virtual Desktop.

  • Problema interno: especifica escenarios que el administrador de inquilinos no puede mitigar y que se deben resolver como un problema de soporte técnico. Al proporcionar comentarios a través del Azure Virtual Desktop Tech Community, incluya el identificador de actividad y el período de tiempo aproximado de cuándo se produjo el problema.
  • Problema externo: se relaciona con escenarios que el administrador del sistema puede mitigar. Estos son externos a Azure Virtual Desktop.

En la tabla siguiente se enumeran los errores comunes en los que pueden encontrarse los administradores.

Nota

Esta lista incluye los errores más comunes y se actualiza con una cadencia regular. Para asegurarse de que tiene la información más up-to-date, asegúrese de volver a comprobar este artículo al menos una vez al mes.

Códigos de error de administración externa

Código numérico Código de error Solución sugerida
1322 ErrorConexiónFallidaSinMapeoDeSIDenAD El usuario no es miembro de Microsoft Entra ID. Siga las instrucciones de Centro de administración de Active Directory para agregarlas.
3 AccesoNoAutorizado El usuario que intentó ejecutar el cmdlet administrativo de PowerShell no tiene permisos para hacerlo o mal escrito su nombre de usuario.
1000 TenantNotFound El nombre de inquilino especificado no coincide con ningún inquilino existente. Revise el nombre del inquilino para ver errores tipográficos e inténtelo de nuevo.
1006 El inquilino no puede ser eliminado porque tiene grupos de hosts de sesión. No se puede eliminar un inquilino siempre que contenga objetos. Elimine primero los grupos de hosts de sesión y vuelva a intentarlo.
2000 Conjunto de servidores no encontrado El nombre del grupo de hosts especificado no coincide con ningún grupo de hosts existente. Revise el nombre del grupo de hosts para ver errores tipográficos e inténtelo de nuevo.
2005 No se puede eliminar el grupo de hosts ya que tiene grupos de aplicaciones No se puede eliminar un grupo de hosts siempre y cuando contenga objetos. Quite primero todos los grupos de aplicaciones del grupo de hosts.
2004 No se puede eliminar el grupo de hosts porque tiene hosts de sesión. Quite primero todos los hosts de sesión antes de eliminar el grupo de hosts de sesión.
5001 AnfitriónDeSesiónNoEncontrado El host de sesión que ha consultado podría estar sin conexión. Compruebe el estado del grupo host.
5008 LaSesiónDelAnfitriónDeSesionesDeUsuarioExiste Debe cerrar la sesión de todos los usuarios en el host de sesión antes de ejecutar la actividad de administración prevista.
6000 GrupoDeAplicacionesNoEncontrado El nombre del grupo de aplicaciones especificado no coincide con ningún grupo de aplicaciones existente. Revise el nombre del grupo de aplicaciones para ver errores tipográficos e inténtelo de nuevo.
6022 AplicaciónRemotaNoEncontrada El nombre de RemoteApp especificado no coincide con ninguna aplicación. Revise El nombre de RemoteApp para ver errores tipográficos e inténtelo de nuevo.
6010 ElementosPublicadosExisten El nombre del recurso que intenta publicar es el mismo que un recurso que ya existe. Cambie el nombre del recurso e inténtelo de nuevo.
7002 NameNotValidWhiteSpace No use espacios en blanco en el nombre.
8000 ÁmbitoDeRolDeAutorizaciónInválido El nombre de rol especificado no coincide con ningún nombre de rol existente. Revise el nombre del rol para los errores tipográficos e inténtelo de nuevo.
8001 UsuarioNoEncontrado El nombre de usuario especificado no coincide con ningún nombre de usuario existente. Revise el nombre en busca de errores tipográficos y vuelva a intentarlo.
8005 UsuarioNoEncontradoEnAAD El nombre de usuario especificado no coincide con ningún nombre de usuario existente. Revisa el nombre por errores tipográficos e inténtalo de nuevo.
8008 Se requiere el consentimiento del inquilino Siga las instrucciones aquí para proporcionar consentimiento para el inquilino.

Códigos de error de conexión externa

Código numérico Código de error Solución sugerida
-2147467259 ErrorDeAnuncioConexiónFallidaNoTalMiembro El usuario no es miembro de Active Directory. Siga las instrucciones de Centro de administración de Active Directory para agregarlas.
-2147467259 FalloConexiónErrorConfianzaConAD El host de sesión no está unido correctamente a Active Directory.
-2146233088 La conexión falló, el usuario tiene una sesión válida pero RDSH no es saludable. Error en las conexiones porque el host de sesión no está disponible. Compruebe el estado del host de sesión.
-2146233088 ConexiónFallidaDesconexiónDelCliente Si ve este error con frecuencia, asegúrese de que el equipo del usuario está conectado a la red.
-2146233088 Conexión fallida: No hay Rdsh saludable disponible La sesión a la que el usuario anfitrión intentó conectarse no está en buen estado. Depurar la máquina virtual.
-2146233088 ConexiónFallidaUsuarioNoAutorizado El usuario no tiene permiso para acceder a la aplicación o escritorio publicados. El error puede aparecer después de quitar los recursos publicados por el administrador. Pida al usuario que actualice el canal en la aplicación Escritorio Remoto.
2 ArchivoNoEncontrado La aplicación a la que el usuario intentó acceder está instalada incorrectamente o establecida en una ruta de acceso incorrecta.
3 CredencialesInválidas El nombre de usuario o la contraseña especificados por el usuario no coincide con ningún nombre de usuario o contraseña existente. Revise las credenciales de errores tipográficos e inténtelo de nuevo.
8 ConnectionBroken La conexión entre Cliente y puerta de enlace o servidor se perdió. No es necesario realizar ninguna acción a menos que se produzca inesperadamente.
14 DesconexiónInesperadaDeRed La conexión a la red se cayó. Pida al usuario que se conecte de nuevo.
24 ReverseConnectFailed La máquina virtual host no tiene acceso directo a RD Gateway. Asegúrese de que se puede resolver la dirección IP de la puerta de enlace.
1322 Conexión fallida: No hay asignación de SID en AD El usuario no es miembro de Active Directory. Siga las instrucciones de Centro de administración de Active Directory para agregarlas.

Pasos siguientes

Para obtener más información sobre los roles dentro del entorno de Azure Virtual Desktop, consulte .

Para ver una lista de los cmdlets de PowerShell disponibles para Azure Virtual Desktop, consulte la referencia de PowerShell.