Compartilhar via


Identificar e diagnosticar problemas na Área de Trabalho Virtual do Azure (clássico)

Importante

Esse conteúdo se aplica à Área de Trabalho Virtual do Azure (clássica), que não dá suporte a objetos da Área de Trabalho Virtual do Azure Resource Manager. Se você estiver tentando gerenciar objetos do Azure Virtual Desktop no Azure Resource Manager, consulte este artigo.

A Área de Trabalho Virtual do Azure oferece um recurso de diagnóstico que permite ao administrador identificar problemas por meio de uma única interface. As funções da Área de Trabalho Virtual do Azure registram uma atividade de diagnóstico sempre que um usuário interage com o sistema. Cada log contém informações relevantes, como as funções da Área de Trabalho Virtual do Azure envolvidas na transação, mensagens de erro, informações do locatário e informações do usuário. As atividades de diagnóstico são criadas por ações administrativas e de usuário final e podem ser categorizadas em três buckets principais:

  • Atividades de assinatura do Feed: o usuário final dispara essas atividades sempre que tenta se conectar ao feed por meio de aplicativos da Área de Trabalho Remota da Microsoft.
  • Atividades de conexão: o usuário final dispara essas atividades sempre que tenta se conectar a uma área de trabalho ou RemoteApp por meio de aplicativos da Área de Trabalho Remota da Microsoft.
  • Atividades de gerenciamento: o administrador dispara essas atividades sempre que executa operações de gerenciamento no sistema, como criar pools de host, atribuir usuários a grupos de aplicativos e criar atribuições de função.

As conexões que não chegam à Área de Trabalho Virtual do Azure não aparecerão nos resultados do diagnóstico porque o próprio serviço de função de diagnóstico faz parte da Área de Trabalho Virtual do Azure. Problemas de conexão da Área de Trabalho Virtual do Azure podem acontecer quando o usuário final está enfrentando problemas de conectividade de rede.

Para começar, faça o download e importe o módulo do PowerShell da Área de Trabalho Virtual do Azure para usar na sua sessão do PowerShell, caso ainda não tenha feito isso. Depois disso, execute o seguinte cmdlet para entrar em sua conta:

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

Diagnosticar problemas com o PowerShell

O Diagnóstico de Área de Trabalho Virtual do Azure usa apenas um cmdlet do PowerShell, mas contém muitos parâmetros opcionais para ajudar a restringir e isolar problemas. As seções a seguir listam os cmdlets que você pode executar para diagnosticar problemas. A maioria dos filtros pode ser aplicada em conjunto. Os valores listados entre colchetes, como <tenantName>, devem ser substituídos pelos valores que se aplicam à sua situação.

Importante

O recurso de diagnóstico é para solução de problemas de usuário único. Todas as consultas que usam o PowerShell devem incluir os parâmetros -UserName ou -ActivityID. Para recursos de monitoramento, use o Log Analytics. Consulte Usar o Log Analytics para o recurso de diagnóstico para obter mais informações sobre como enviar dados de diagnóstico para seu workspace.

Filtrar atividades de diagnóstico por usuário

O parâmetro -UserName retorna uma lista de atividades de diagnóstico iniciadas pelo usuário especificado, conforme mostrado no cmdlet de exemplo a seguir.

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

O parâmetro -UserName também pode ser combinado com outros parâmetros de filtragem opcionais.

Filtrar atividades de diagnóstico por tempo

Você pode filtrar a lista de atividades de diagnóstico retornadas com os parâmetros -StartTime e -EndTime. O parâmetro -StartTime retornará uma lista de atividades de diagnóstico a partir de uma data específica, conforme mostrado no exemplo a seguir.

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

O parâmetro -EndTime pode ser adicionado a um cmdlet com o parâmetro -StartTime para especificar um período específico para o qual você deseja receber resultados. O cmdlet de exemplo a seguir retornará uma lista de atividades de diagnóstico entre 1º de agosto e 10 de agosto.

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

Os parâmetros -StartTime e -EndTime também podem ser combinados com outros parâmetros de filtragem opcionais.

Filtrar atividades de diagnóstico por tipo de atividade

Você também pode filtrar atividades de diagnóstico por tipo de atividade com o parâmetro -ActivityType. O cmdlet a seguir retornará uma lista de conexões de usuário final:

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

O cmdlet a seguir retornará uma lista de tarefas de gerenciamento de administrador:

Get-RdsDiagnosticActivities -TenantName <tenantName> -ActivityType Management

O cmdlet Get-RdsDiagnosticActivities atualmente não dá suporte à especificação de Feed como o ActivityType.

Filtrar atividades de diagnóstico por resultado

Você pode filtrar a lista de atividades de diagnóstico retornadas por resultado com o parâmetro -Resultado. O cmdlet de exemplo a seguir retornará uma lista de atividades de diagnóstico bem-sucedidas.

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

O seguinte cmdlet de exemplo retornará uma lista de atividades de diagnóstico que falharam.

Get-RdsDiagnosticActivities -TenantName <tenantName> -Outcome Failure

O parâmetro -Outcome também pode ser combinado com outros parâmetros de filtragem opcionais.

Recuperar uma atividade de diagnóstico específica por ID de atividade

O parâmetro -ActivityId retornará uma atividade de diagnóstico específica se existir, conforme mostrado no cmdlet de exemplo a seguir.

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

Exibir mensagens de erro para uma atividade com falha por ID da atividade

Para exibir as mensagens de erro de uma atividade com falha, execute o cmdlet com o parâmetro -Detailed. Você pode exibir a lista de erros executando o cmdlet Select-Object.

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

Recuperar atividades de diagnóstico detalhadas

O parâmetro -Detailed fornece detalhes adicionais para cada atividade de diagnóstico retornada. O formato para cada atividade varia dependendo de seu tipo de atividade. O parâmetro -Detailed pode ser adicionado a qualquer consulta Get-RdsDiagnosticActivities, conforme mostrado no exemplo a seguir.

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

Cenários de erro comuns

Os cenários de erro são categorizados interno para o serviço e externos à Área de Trabalho Virtual do Azure.

  • Problema interno: especifica cenários que não podem ser atenuados pelo administrador do locatário e precisam ser resolvidos como um problema de suporte. Ao fornecer comentários por meio da Tech Community da Área de Trabalho Virtual do Azure , inclua a ID da atividade e o período aproximado em que o problema ocorreu.
  • Problema externo: relacionado a cenários que podem ser mitigados pelo administrador do sistema. Elas são externas à Área de Trabalho Virtual do Azure.

A tabela a seguir lista erros comuns que seus administradores podem encontrar.

Nota

Essa lista inclui a maioria dos erros comuns e é atualizada em uma cadência regular. Para garantir que você tenha as informações mais atualizadas up-to, certifique-se de consultar este artigo pelo menos uma vez por mês.

Códigos de erro de gerenciamento externo

Código numérico Código de erro Solução sugerida
1322 FalhaNaConexãoSemMapeamentoDeSIDNoAD O usuário não é membro da ID do Microsoft Entra. Siga as instruções em do Centro Administrativo do Active Directory para adicioná-las.
3 AcessoNãoAutorizado O usuário que tentou executar o cmdlet administrativo do PowerShell não tem permissões para fazer isso ou digitou incorretamente seu nome de usuário.
1000 LocatárioNãoEncontrado O nome do locatário inserido não corresponde a nenhum locatário existente. Examine o nome do locatário para erros de digitação e tente novamente.
1006 O locatário não pode ser removido porque possui pools de host de sessão. Você não pode excluir um locatário desde que ele contenha objetos. Exclua os pools de host da sessão primeiro e tente novamente.
2000 PoolDeHostNãoEncontrado O nome do pool de host inserido não corresponde a nenhum pool de host existente. Examine o nome do pool de host para erros de digitação e tente novamente.
2005 PoolDeHospedagemNaoPodeSerRemovidoPossuiGruposDeAplicativos Você não pode excluir um pool de hosts desde que ele contenha objetos. Remova todos os grupos de aplicativos no pool de hosts primeiro.
2004 Pool de Hosts Não Pode Ser Removido Pois Possui Hosts de Sessão Remova os hosts de todas as sessões primeiro antes de excluir o pool de hosts da sessão.
5001 AnfitriãoDaSessãoNãoEncontrado O host de sessão que você consultou pode estar offline. Verifique o status do pool de hosts.
5008 SessõesHostDeUsuárioExistem Você deve desconectar todos os usuários no host da sessão antes de executar a atividade de gerenciamento pretendida.
6000 GrupoDeAplicativosNãoEncontrado O nome do grupo de aplicativos inserido não corresponde a nenhum grupo de aplicativos existente. Examine o nome do grupo de aplicativos para erros de digitação e tente novamente.
6022 Aplicativo Remoto Não Encontrado O nome RemoteApp inserido não corresponde a nenhum aplicativo. Examine o nome do RemoteApp para erros de digitação e tente novamente.
6010 ItensPublicadosExistem O nome do recurso que você está tentando publicar é o mesmo que um recurso que já existe. Altere o nome do recurso e tente novamente.
7002 NameNotValidWhiteSpace Não use espaço em branco no nome.
8000 EscopoDePapelDeAutorizaçãoInválido O nome da função que você inseriu não corresponde a nenhum nome de função existente. Examine o nome da função para erros de digitação e tente novamente.
8001 UsuárioNãoEncontrado O nome de usuário inserido não corresponde a nenhum nome de usuário existente. Revise o nome para verificar se há erros de digitação e tente novamente.
8005 UsuárioNãoEncontradoNoAAD O nome de usuário inserido não corresponde a nenhum nome de usuário existente. Revise o nome em busca de erros de digitação e tente novamente.
8008 ConsentimentoDoInquilinoNecessário Siga as instruções aqui para fornecer consentimento para seu locatário.

Códigos de erro de conexão externa

Código numérico Código de erro Solução sugerida
-2147467259 ErroDeConexãoFalhouAdNenhumMembroEncontrado O usuário não é membro do Active Directory. Siga as instruções em do Centro Administrativo do Active Directory para adicioná-las.
-2147467259 FalhaNaConexãoRelacionamentoDeConfiançaDoAD O host da sessão não está associado corretamente ao Active Directory.
-2146233088 FalhaNaConexãoUsuárioTemSessãoVálidaMasRdshEstáComProblemas As conexões falharam porque o host da sessão não está disponível. Cheque a integridade do host da sessão.
-2146233088 FalhaNaConexãoDesconexãoDoCliente Se você vir esse erro com frequência, verifique se o computador do usuário está conectado à rede.
-2146233088 FalhaNaConexãoSemRdshSaudávelDisponível A sessão à qual o usuário host tentou se conectar não está estável. Depure a máquina virtual.
-2146233088 FalhaNaConexãoUsuárioNãoAutorizado O usuário não tem permissão para acessar o aplicativo publicado ou a área de trabalho. O erro pode aparecer depois que o administrador removeu os recursos publicados. Peça ao usuário para atualizar o feed no aplicativo da Área de Trabalho Remota.
2 Arquivo Não Encontrado O aplicativo que o usuário tentou acessar está instalado incorretamente ou definido como um caminho incorreto.
3 Credenciais Inválidas O nome de usuário ou senha que o usuário inseriu não corresponde a nomes de usuário ou senhas existentes. Examine as credenciais para erros de digitação e tente novamente.
8 ConnectionBroken A conexão entre o Cliente e o Gateway ou o Servidor foi interrompida. Nenhuma ação é necessária, a menos que ocorra inesperadamente.
14 DesconexãoInesperadaDaRede A conexão com a rede foi removida. Peça ao usuário para se conectar novamente.
24 Falha na Conexão Reversa A máquina virtual do host não tem visibilidade direta para o Gateway RD. Verifique se o endereço IP do Gateway pode ser resolvido.
1322 FalhaNaConexãoNenhumMapeamentoDeSIDnoAD O usuário não é membro do Active Directory. Siga as instruções em do Centro Administrativo do Active Directory para adicioná-las.

Próximas etapas

Para saber mais sobre as funções na Área de Trabalho Virtual do Azure, consulte ambiente da Área de Trabalho Virtual do Azure.

Para ver uma lista de cmdlets disponíveis do PowerShell para a Área de Trabalho Virtual do Azure, consulte a referência PowerShell.