A ferramenta de inspeção ArrInspector

O ArrInspector é uma ferramenta baseada na Web usada para inspecionar uma sessão do Azure Remote Rendering em execução. Ela deve ser usada para fins de depuração, para inspecionar a estrutura da cena que está sendo renderizada, mostrar as mensagens de log e monitorar o desempenho ao vivo no servidor.

Screenshot shows the ArrInspector tool interface.

Conectando-se ao ArrInspector

Após obter o nome do host (terminando em mixedreality.azure.com) de seu servidor do Remote Rendering, conecte-se usando ConnectToArrInspectorAsync. Confira Conectar-se ao inspetor de ARR. Essa função cria uma página StartArrInspector.html no dispositivo em que o aplicativo está sendo executado. Para iniciar o ArrInspector, abra o arquivo usando um navegador em um PC. Ele é válido por apenas 24 horas.

Se o aplicativo que chama ConnectToArrInspectorAsync já estiver em execução em um PC:

  • Se você estiver usando a integração do Unity, ela poderá ser iniciada automaticamente.
  • Caso contrário, você vai encontrar o arquivo em User Folders\LocalAppData\[your_app]\AC\Temp.

Se o aplicativo estiver em execução em um HoloLens:

  1. Acesse o HoloLens usando o Portal de Dispositivos do Windows.
  2. Vá até Sistema > Explorador de Arquivos.
  3. Navegue até Pastas do Usuário\LocalAppData\[seu_aplicativo]\AC\Temp.
  4. Salve StartArrInspector.html no PC.
  5. Abra StartArrInspector.html para carregar o ArrInspector da sessão.

O painel Desempenho

Screenshot shows the ArrInspector Performance panel.

Esse painel mostra grafos de todos os valores de desempenho por quadro expostos segundo o servidor. Atualmente, os valores incluem tempo de quadro, FPS, uso de CPU e memória, estatísticas relacionadas à memória, como uso geral da RAM, contagens de objetos etc.

Para visualizar um desses parâmetros, selecione o botão Adicionar Novo e selecione um dos valores disponíveis na caixa de diálogo. Isso adiciona um novo gráfico de rolagem ao painel, com o rastreamento dos valores em tempo real. À direita, você pode ver os valores mínimo, máximo e atual.

Você pode aplicar uma panorâmica ao grafo arrastando o conteúdo dele com o mouse, mas o movimento panorâmico horizontal só é possível quando o ArrInspector está pausado.

Manter a tecla Ctrl pressionada ao arrastar permite ampliar o zoom. O zoom horizontal também pode ser controlado com o controle deslizante na parte inferior.

Por padrão, o intervalo vertical é calculado com base nos valores exibidos atualmente, e os valores mínimo e máximo são mostrados nas caixas de texto à direita. Quando valores são definidos manualmente, seja digitando-os diretamente na caixa de texto ou aplicando panorâmica/ampliando, o grafo usa esses valores. Para restaurar o enquadramento vertical automático, selecione o ícone no canto superior direito.

Screenshot shows the vertical range minimum and maximum values.

O painel Log

Screenshot shows the Log panel, which displays log messages.

O painel Log mostra uma lista de mensagens de log geradas no lado do servidor. No momento da conexão, ele mostra até 200 mensagens de log anteriores e imprime novas à medida que elas ocorrem.

Filtre a lista com base no tipo de log [Error/Warning/Info/Debug] usando os botões na parte superior.

O painel Captura de Dados de Tempo

Screenshot shows the Timing Data Capture panel.

Esse painel é usado para capturar informações de tempo do servidor e baixá-las. O arquivo usa o formato JSON de rastreamento do Chrome. Para inspecionar os dados, abra o Chrome na URL Chrome://tracing e arraste e solte o arquivo baixado para a página. Os dados de tempo são coletados continuamente em um buffer de anéis de tamanho fixo. Quando escrita, a captura inclui apenas informações sobre o passado imediato, ou seja, de alguns segundos a alguns minutos.

O painel Inspeção de Cena

Screenshot shows the Scene Inspection panel with FORWARD selected.

Este painel de inspeção de cena mostra a estrutura da cena renderizada. A hierarquia de objetos está à esquerda e o conteúdo do objeto selecionado está à direita. O painel é somente leitura e é atualizado em tempo real.

O painel Informações de Depuração da VM

Screenshot shows the V M Debug Information panel.

O painel de Informações de Depuração da VM oferece alguma funcionalidade de depuração.

Reiniciar serviço

O botão Reiniciar Serviço reinicia o runtime na máquina virtual à qual o ArrInspector está conectado. Qualquer cliente anexado será desconectado e a página do ArrInspector deverá ser recarregada para se conectar ao serviço reiniciado.

Coletar informações de depuração

O botão Coletar Informações de Depuração para VM permite disparar a instância do Remote Rendering para coletar informações de depuração sobre a máquina virtual:

Screenshot shows the V M Debug Information dialog box.

As informações de depuração ajudam a equipe do Azure Remote Rendering a analisar os problemas que ocorrem em uma instância do Remote Rendering em execução. A caixa de diálogo tem um campo de texto para fornecer outros detalhes, por exemplo, etapas para reproduzir um problema.

Depois de selecionar Iniciar Coleta, a caixa de diálogo será fechada e o processo de coleta será iniciado. A coleta das informações sobre a máquina virtual pode levar alguns minutos.

Screenshot shows V M Debug Information collection in progress

Após a conclusão da coleta, você receberá uma notificação na janela do ArrInspector. A notificação contém uma ID para essa coleta em particular. Lembre-se de salvar a ID para passá-la para a equipe do Azure Remote Rendering.

Screenshot shows the V M Debug Information collection success message.

Importante

Não é possível baixar nem acessar de outra maneira as informações de depuração da máquina virtual. Somente a equipe do Azure Remote Rendering tem acesso aos dados coletados. Você precisa entrar em contato conosco e enviar a ID da coleta para que possamos investigar o problema.

Modo de pausa

No canto superior direito, uma opção permite que você pause a atualização dinâmica dos painéis. Esse modo pode ser útil para inspecionar cuidadosamente um estado específico.

Screenshot shows the control to pause live updates.

Ao habilitar novamente as atualizações dinâmicas, todos os painéis são redefinidos.