Explore o painel .NET.NET Aspire
Nas próximas seções, você descobre como criar um projeto .NET.NET Aspire e embarcar nas seguintes tarefas:
Investigue os recursos do painel usando o aplicativo gerado a partir do modelo de projeto, conforme explicado na Guia de início rápido: crie seu primeiro projeto .NET.NET Aspire.
Aprofunde-se nos recursos do aplicativo de painel .NET.NET Aspire.
As capturas de tela apresentadas neste artigo mostram o tema escuro. Para obter mais informações sobre a seleção de temas, consulte Seleção de temas.
Autenticação do painel
Quando você executa um host de aplicativo .NET.NET Aspire, o orquestrador inicia todos os recursos dependentes do aplicativo e, em seguida, abre uma janela do navegador para o painel. O painel .NET.NET Aspire requer autenticação baseada em token para seus usuários porque exibe variáveis de ambiente e outras informações confidenciais.
Quando o painel é iniciado a partir do Visual Studio ou Visual Studio Code (com a extensão C# Dev Kit), o navegador é automaticamente conectado e o painel é aberto diretamente. Este é o desenvolvedor típico experiência F5, e o fluxo de login de autenticação é automatizado pelas ferramentas .NET.NET Aspire.
No entanto, se iniciar o anfitrião da aplicação a partir da linha de comandos, ser-lhe-á apresentada a página de início de sessão. A janela do console exibe um URL que você pode selecionar para abrir o painel no navegador.
A URL contém uma cadeia de caracteres de consulta de token (com o valor do token mapeado para a parte de nome do t
) que é usada para fazer login para o painel. Se o console suportar, mantenha pressionada a tecla Ctrl
A página de login aceita um token e fornece instruções úteis sobre como obtê-lo, conforme mostrado na captura de tela a seguir:
Depois de copiar o token do console e colá-lo na página de login, selecione o botão Login.
O painel persiste o token como um cookiepersistente do navegador, que permanece válido por três dias. Os cookies persistentes têm uma data de validade e permanecem válidos mesmo depois de fechar o navegador. Isso significa que os usuários não precisam fazer login novamente se fecharem e reabrirem o navegador. Para obter mais informações, consulte as Considerações de segurança para executar o painel .NET.NET Aspire documentação.
Página de recursos
A página Recursos
- apiservice: Um projeto de API back-end criado usando APIs mínimas.
- webfrontend: O projeto de interface do usuário front-end criado usando Blazor.
O painel também fornece detalhes essenciais sobre cada recurso:
- Tipo: Exibe se o recurso é um projeto, contêiner ou executável.
- Nome: O nome do recurso.
-
State: Exibe se o recurso está ou não em execução no momento.
Erros : Dentro da coluna Estado, os erros são exibidos como um selo com a contagem de erros. É útil entender rapidamente quais recursos estão relatando erros. A seleção do selo leva você ao logs semânticos para esse recurso com o filtro em um nível de erro.
- Hora de início: Quando o recurso começou a ser executado.
- de origem: A localização do recurso no dispositivo.
- Pontos de extremidade: Uma ou mais URLs para acessar o recurso em execução diretamente.
- Logs: Um link para a página de logs de recursos.
-
Ações: Um conjunto de ações que podem ser executadas no recurso:
- Stop / Start: Pare (ou Iniciar) o recurso — dependendo do estado atual do .
- Logs do console: Navegue até os logs do console do recurso.
-
Ellipsis: Um submenu com ações específicas de recursos extras:
- Ver detalhes: Veja os detalhes do recurso.
- Log do console: Navegue até os logs do console do recurso.
- Logs estruturados: Navegue até os logs estruturados do recurso.
- Rastreamentos: Navegue até os rastreamentos do recurso.
- Métricas: Navegue até as métricas do recurso.
- Reiniciar: Pare e inicie o recurso.
Considere a seguinte captura de tela da página de recursos:
Ações de recursos
Cada recurso tem um conjunto de ações disponíveis que são habilitadas condicionalmente com base no estado atual do recurso. Por exemplo, se um recurso estiver em execução, a ação Parar estará habilitada. Se o recurso for interrompido, a ação Iniciar será habilitada. Da mesma forma, algumas ações são desativadas quando não estão disponíveis, por exemplo, alguns recursos não têm logs estruturados. Nessas situações, a ação
Parar ou iniciar um recurso
O painel
Quando você seleciona Parar, o recurso para de ser executado e a coluna Estado é atualizada para refletir a alteração.
Observação
Para recursos do projeto, quando o depurador é anexado, ele é reanexado na reinicialização.
O botão Iniciar é então ativado, permitindo que você inicie o recurso novamente. Além disso, o painel exibe uma notificação do sistema do resultado da ação:
Quando um recurso está em um estado não em execução, o botão Iniciar é habilitado. Selecionar Iniciar inicia o recurso e a coluna Estado é atualizada para refletir a alteração. O botão Parar é então ativado, permitindo que você pare o recurso novamente. O painel exibe uma notificação do sistema do resultado da ação:
Dica
Recursos que dependem de outros recursos que são interrompidos ou reiniciados podem ter erros temporários. Esse comportamento é esperado e normalmente é resolvido quando os recursos dependentes estão em um estado de
Ações do submenu de recursos
Selecionar o ícone de reticências horizontais na coluna Ações abre um submenu com ações adicionais específicas de recursos. Além das ações internas do submenu de recursos, você também pode definir ações de recursos personalizados definindo comandos personalizados. Para obter mais informações, consulte Comandos de recurso personalizados no .NET.NET Aspire. Para as ações do submenu de recursos interno, considere a seguinte captura de tela:
As seguintes ações do submenu estão disponíveis:
- Ver detalhes: Veja os detalhes do recurso.
- Log do console: Navegue até os logs do console do recurso.
- Logs estruturados: Navegue até os logs estruturados do recurso.
- Rastreamentos: Navegue até os rastreamentos do recurso.
- Métricas: Navegue até as métricas do recurso.
- Reiniciar: Pare e inicie o recurso.
Importante
Pode haver recursos com ações de submenu desabilitadas. Eles ficam acinzentados quando estão desativados. Por exemplo, a captura de tela a seguir mostra as ações do submenu desabilitadas:
Copiar ou Abrir no visualizador de texto
Para visualizar um visualizador de texto de determinadas colunas, ao passar o mouse você verá um ícone de reticências verticais. Selecione o ícone para exibir as opções disponíveis:
- Copiar para a área de transferência
- Abrir no visualizador de texto
Considere a seguinte captura de tela das opções do menu de reticências:
Quando você seleciona a opção
Alguns valores são formatados como JSON ou XML. Nesses casos, o visualizador de texto permite que a lista suspensa Selecionar formato
Detalhes do recurso
Você pode obter detalhes completos sobre cada recurso selecionando o botão de reticências na coluna Ações do
A barra de pesquisa no canto superior direito do painel também oferece a opção de filtrar a lista, o que é útil para .NET.NET Aspire projetos com muitos recursos. Para selecionar os tipos de recursos exibidos, solte a seta à esquerda da caixa de texto do filtro:
Neste exemplo, apenas contêineres são exibidos na lista. Por exemplo, se você habilitar Usar Redis para de cache ao criar um projeto .NET Aspire, verá um contêiner Redis listado:
Os executáveis são processos autônomos. Você pode configurar um projeto .NET.NET Aspire para executar um executável autônomo durante a inicialização, embora os modelos iniciais padrão não incluam nenhum executável por padrão.
A captura de tela a seguir mostra um exemplo de um projeto que tem erros:
A seleção do selo de contagem de erros navega até a página
Para ver a entrada de log em detalhes para o erro, selecione o botão Exibir para abrir uma janela abaixo da lista com os detalhes da entrada de log estruturada:
Para obter mais informações e exemplos de logs estruturados, consulte a seção página
Observação
A página de recursos não estará disponível se o painel for iniciado sem um serviço de recursos configurado. Em vez disso, o painel começa na página logs estruturados. Essa é a experiência padrão quando o painel é executado no modo autônomo sem configuração adicional.
Para obter mais informações sobre como configurar um serviço de recurso, consulte Dashboard configuration.
Páginas de monitorização
O painel .NET.NET Aspire fornece várias maneiras de exibir logs, rastreamentos e métricas para seu aplicativo. Essas informações permitem que você acompanhe o comportamento e o desempenho do seu aplicativo e diagnostique quaisquer problemas que surjam.
Página de logs do console
Os logs do Console página exibe o texto que cada recurso em seu aplicativo enviou para a saída padrão. Os logs são uma maneira útil de monitorar a integridade do seu aplicativo e diagnosticar problemas. Os logs são exibidos de forma diferente dependendo da origem, como projeto, contêiner ou executável.
Ao abrir a página Logs do console, você deve selecionar uma fonte na lista suspensa Selecionar um recurso.
Se você selecionar um projeto, os logs dinâmicos serão renderizados com um conjunto estilizado de cores que correspondem à gravidade do log; verde para informação, por exemplo. Considere o seguinte exemplo de captura de tela de logs de projeto com o apiservice
projeto selecionado:
Quando ocorrem erros, eles são estilizados nos logs de forma que sejam fáceis de identificar. Considere o seguinte exemplo de captura de tela de logs de projeto com erros:
Se você selecionar um contêiner ou executável, a formatação será diferente de um projeto, mas as informações detalhadas de comportamento ainda estarão disponíveis. Considere o seguinte exemplo de captura de tela de um log de contêiner com o contêiner cache
selecionado:
Réplicas de recursos
Quando os recursos do projeto são replicados usando a API WithReplicas, eles são representados no seletor de recursos sob uma entrada de recurso nomeada de nível superior com um ícone para indicador. Cada recurso replicado é listado sob a entrada de recurso de nível superior, com seu nome exclusivo correspondente. Considere o seguinte exemplo de captura de tela de um recurso de projeto replicado:
A captura de tela anterior mostra o projeto catalogservice (application)
com duas réplicas, catalogservice-2bpj2qdq6k
e catalogservice-6ljdin0hc0
. Cada réplica tem seu próprio conjunto de logs que podem ser visualizados selecionando o nome da réplica.
Página de logs estruturados
.NET Aspire configura automaticamente seus projetos com registro em log usando OpenTelemetry. Navegue até a página
- Resource: O recurso do qual o log se originou.
- Nível: O nível de log da entrada, como informações, aviso ou erro.
- de carimbo de data/hora: A hora em que o log ocorreu.
- Mensagem: Os detalhes do log.
- Rastrear: Um link para o rastreamento relevante para o log, se aplicável.
- Detalhes: Detalhes adicionais ou metadados sobre a entrada de log.
Considere o seguinte exemplo de captura de tela de logs semânticos:
Filtrar logs estruturados
A página de logs estruturados também fornece uma barra de pesquisa para filtrar os logs por serviço, nível ou mensagem. Use a lista suspensa Level para filtrar por nível de log. Você também pode filtrar por qualquer propriedade de log selecionando o botão de ícone de filtro, que abre a caixa de diálogo de filtro avançado.
Considere as seguintes capturas de tela mostrando os logs estruturados, filtrados para exibir itens com "Hospedagem" no texto da mensagem:
Página de rastreios
Navegue até a página
- de carimbo de data/hora: Quando o rastreamento foi concluído.
- Nome: O nome do rastreamento, prefixado com o nome do projeto.
- Spans: Os recursos envolvidos no pedido.
- Duração: O tempo necessário para concluir o pedido. Esta coluna inclui um ícone radial que ilustra a duração do pedido em comparação com os outros na lista.
Rastrear rastreamentos
A página de rastreamentos também fornece uma barra de pesquisa para filtrar os rastreamentos por nome ou extensão. Aplique um filtro e observe que os resultados do rastreamento são atualizados imediatamente. Considere a seguinte captura de tela de rastreamentos com um filtro aplicado a weather
e observe como o termo de pesquisa é realçado nos resultados:
Ao filtrar rastreamentos na caixa de diálogo Adicionar de filtro http.route
selecionado:
Combine telemetria a partir de vários recursos
Quando um recurso tem várias réplicas, você pode filtrar a telemetria para exibir dados de todas as instâncias de uma só vez. Selecione o recurso pai, rotulado (application)
, conforme mostrado na captura de tela a seguir:
Depois de selecionar o recurso pai, a página de rastreamentos exibe a telemetria de todas as instâncias do recurso.
Detalhes do rastreio
A página de detalhes do rastreamento contém vários detalhes pertinentes à solicitação, incluindo:
- Detalhes do rastreamento: Quando o rastreamento foi iniciado.
- Duração: O tempo necessário para concluir o pedido.
- Recursos: O número de recursos envolvidos na solicitação.
- Profundidade: O número de camadas envolvidas na solicitação.
- Total Spans: O número total de extensões envolvidas na solicitação.
Cada extensão é representada como uma linha na tabela e contém um Nome . Os Spans também exibem o ícone de erro se ocorrer um erro dentro dessa extensão específica do rastreamento. Spans que têm um tipo de client/consumer, mas não têm uma extensão no server, mostram um ícone de seta e, em seguida, o endereço de destino. Isso representa uma chamada client para um sistema fora do projeto .NET Aspire. Por exemplo, uma solicitação HTTP, uma API da Web externa ou uma chamada de banco de dados.
Na página de detalhes do rastreamento, há um botão Exibir logs que leva você à página de logs estruturados com um filtro aplicado para mostrar apenas os logs relevantes para a solicitação. Considere um exemplo de captura de tela representando a página de logs estruturados com um filtro aplicado para mostrar apenas os logs relevantes para o rastreamento:
A página de logs estruturados é discutida com mais detalhes na seção página
Exemplos de rastreio
Cada traço tem uma cor, que é gerada para ajudar a diferenciar entre extensões — uma cor para cada recurso. As cores são refletidas na página de rastreamentos e na página detalhes do rastreamento. Quando os rastreamentos representam um ícone de seta, esses ícones também são coloridos para corresponder à extensão do rastreamento de destino. Considere o seguinte exemplo de captura de tela de rastreamentos:
Você também pode selecionar o botão Exibir para navegar até uma exibição detalhada da solicitação e da duração do tempo gasto viajando por cada camada de aplicativo. Considere um exemplo de seleção de um rastreamento para exibir seus detalhes:
Para cada extensão no rastreamento, selecione Exibir para ver mais detalhes:
Role para baixo nos detalhes da extensão para ver todas as informações. Na parte inferior do painel de detalhes da extensão, alguns tipos de span, como esta chamada para um cache, mostram os tempos de eventos de span:
Quando há erros, a página processa um ícone de erro ao lado do nome do rastreamento. Considere um exemplo de captura de tela de rastreamentos com erros:
E a visualização detalhada correspondente do rastreamento com erros:
Página de métricas
Navegue até a página Métricas
Cada projeto de publicação de métricas em seu aplicativo tem suas próprias métricas. A página de métricas exibe um painel de seleção para cada medidor de nível superior e os instrumentos correspondentes que você pode selecionar para exibir a métrica.
Considere a seguinte captura de tela de exemplo da página de métricas, com o projeto webfrontend
selecionado e a métrica System.Net.Http
do medidor de http.client.request.duration
selecionada:
Além do gráfico de métricas, a página de métricas inclui uma opção para exibir os dados como uma tabela. Considere a seguinte captura de tela da página de métricas com o modo de exibição de tabela selecionado:
Abaixo do gráfico, há uma lista de filtros que você pode aplicar para se concentrar nos dados que lhe interessam. Por exemplo, na captura de tela a seguir, o campo http.request.method
Você também pode optar por selecionar a contagem da métrica exibida no acesso vertical, em vez de seus valores:
Para obter mais informações sobre métricas, consulte métricas internas no .NET.
Exemplares
O painel .NET Aspire suporta e exibe OpenTelemetryExemplares. Um exemplo vincula um ponto de dados métricos à operação que o registrou, servindo como uma ponte entre métricas e rastreamentos.
Os exemplos são úteis porque fornecem contexto adicional sobre por que um valor métrico específico foi registrado. Por exemplo, se você notar um pico de latência na métrica http.client.request.duration
, um exemplo pode apontar para um rastreamento ou extensão específica que causou o pico, ajudando você a entender a causa raiz.
Os exemplos são exibidos no gráfico de métricas como um pequeno ponto redondo ao lado do ponto de dados. Quando você passa o mouse sobre o indicador, uma dica de ferramenta exibe os detalhes do exemplo, conforme mostrado na captura de tela a seguir:
A captura de tela anterior mostra os detalhes do exemplo para a métrica http.client.request.duration
. Os detalhes do exemplo incluem:
- Nome do recurso.
- Operação executada, neste caso um HTTP GET para o
/catalog/images/{id}
. - Valor correspondente e o carimbo de data/hora.
Selecionar o indicador de exemplo abre a página de detalhes do rastreamento, onde você pode visualizar o rastreamento associado, por exemplo, considere a seguinte captura de tela:
Para obter mais informações, consulte OpenTelemetry Docs: Exemplars.
Seleção de temas
Por padrão, o tema é definido para seguir o tema Sistema, o que significa que o painel usa o mesmo tema do seu sistema operacional. Você também pode selecionar o claro ou tema escuro para substituir o tema do sistema. As seleções temáticas persistem.
A captura de tela a seguir mostra a caixa de diálogo de seleção de tema, com o tema Sistema padrão selecionado:
Se preferir o tema Light, você pode selecioná-lo na caixa de diálogo de seleção de tema:
Atalhos do painel
O painel .NET.NET Aspire fornece vários atalhos para ajudar você navega e controla diferentes partes do painel. Para exibir os atalhos de teclado, pressione Shift + ?, ou selecione o ícone de ponto de interrogação no canto superior direito do painel:
Estão disponíveis os seguintes atalhos:
Painéis:
- +: Aumentar o tamanho do painel.
- -: Diminua o tamanho do painel.
- Shift + r: Rtamanho do painel eset.
- Shift + t: Torientação do painel de alternância.
- Shift + x: Fechar painel.
Página de navegação:
- r: Vá para Resources.
- c: Vá para Console Logs.
- s: Vá para SLogs tructured.
- t: Vá para Tcorridas.
- m: Vá para Metrics.
de navegação em todo o site:
- ?: Got to Help.
- Shift + s: Vá para Settings.