Partilhar via


Visão geral

A extensão VisualStudio.Extensibility Diagnostics Explorer foi projetada para ajudar a depurar extensões VisualStudio.Extensibility ao desenvolvê-las. O público-alvo desta extensão são os autores da extensão, não os consumidores da extensão. Essa extensão fornece uma interface para inspecionar os pontos de extensibilidade com os quais as extensões estão interagindo e quais extensões de objetos de configuração estão fornecendo ao IDE e os metadados desses objetos de configuração.

Começar

Siga estas instruções para instalar, iniciar e configurar o Diagsnotics Explorer.

Instalar a extensão

Você pode obter o Diagnostics Explorer diretamente por meio do Extension Manager no Visual Studio ou do Visual Studio Marketplace aqui.

Observação

A extensão VisualStudio.Extensibility Diagnostics Explorer é compatível com o Visual Studio 2022 17.12 e superior.

Abra o Gerenciador de Diagnósticos no Visual Studio

Para iniciar o Diagnostics Explorer no Visual Studio, selecione VisualStudio.Extensibility Diagnostics Explorer no menu Extensions.

Captura de tela do comando que abre a janela da ferramenta da extensão.

Habilitar a coleta de diagnósticos

O Gerenciador de Diagnósticos está configurado para coletar dados de diagnóstico relevantes de suas extensões por padrão. Se o utilizador quiser desativar ou reativar esta recolha de dados, pode assinalar ou desmarcar a caixa de verificação Habilitar recolha de diagnósticos no canto inferior esquerdo da janela da ferramenta. Uma reinicialização do Visual Studio é necessária para que quaisquer alterações nessa configuração entrem em vigor.

Captura de tela da configuração

Páginas de diagnóstico

O painel esquerdo da janela da ferramenta Diagnostics Explorer contém uma lista diferente páginas de diagnóstico. Existem dois tipos de páginas de diagnóstico - recursos extensíveis e infraestrutura de extensibilidade. As páginas de recursos extensíveis fornecem informações de diagnóstico sobre um componente extensível específico no Visual Studio, como comandos. As páginas de infraestrutura de extensibilidade fornecem informações de diagnóstico relevantes, independentemente dos pontos de extensibilidade aos quais sua extensão se conecta. A página de Eventos , que é um visualizador ao vivo para eventos relacionados com a extensibilidade, e a página de Contextos de Cliente , que mostra o estado relevante do IDE para ajudá-lo a definir as suas restrições de ativação, são as duas páginas de infraestrutura de extensibilidade.

Captura de tela do painel esquerdo da janela da ferramenta.

Páginas de características extensíveis

As páginas de recursos extensíveis têm uma ComboBox no canto superior esquerdo para os diferentes pontos de extensibilidade nessa área de recurso, cada um dos quais pode ser mapeado diretamente para objetos de configuração em sua extensão. Por exemplo, na página Comandos, há um Ponto de Extensibilidade para Menus e Barras de Ferramentas, que mostra cada um dos menus e barras de ferramentas que o Visual Studio descobriu nas suas extensões VisualStudio.Extensibilidade.

Os dados são atualizados em tempo real à medida que as propriedades são atualizadas em extensões. Por exemplo, se uma extensão alterar o nome de exibição de um dos seus comandos durante a execução, o novo nome de exibição desse comando será mostrado imediatamente na célula na coluna Nome de Exibição para esse comando.

Captura de ecrã da página Comandos.

O Extensibility Point ComboBox também tem um item chamado Log, que mostra uma visualização ao vivo dessas atualizações. O botão Limpar Tudo ao lado da ComboBox pode ser usado para limpar todas as linhas que estão a serem exibidas atualmente na vista.

Captura de ecrã da página Registo do Comando.

Você pode filtrar os itens no modo de exibição usando o Extensões ComboBox. Quando All é selecionado nesta ComboBox, os dados para cada extensão VisualStudio.Extensibility instalada são mostrados. Se você alterar essa ComboBox para a ID de uma extensão específica, somente os itens relacionados a essa extensão específica serão mostrados. O valor desta ComboBox é mantido mesmo quando você navega entre páginas de recursos extensíveis.

Captura de tela da página do comando filtrada para uma extensão específica.

Algumas células no DataGrid exibem [Clique para expandir]. Essa mensagem significa que os metadados relacionados a essa propriedade são muito detalhados para serem exibidos em uma célula do DataGrid. Clicar na célula abre uma caixa de diálogo modal exibindo o valor real dessa célula.

Captura de tela da caixa de diálogo modal

Páginas de infraestrutura extensível

Página de Eventos

A página de eventos mostra quando "algo acontece" no IDE. Cada evento aparece como uma nova linha no DataGrid, juntamente com quaisquer propriedades relacionadas a esse evento. Por exemplo, quando um comando é executado, um evento Comandos - Executando aparece na exibição mostrando a ID da extensão à qual o comando pertence e a ID do comando que foi executado.

Você pode usar o Event ComboBox para filtrar a exibição para conter apenas eventos com um nome específico. Quando Todos os são selecionados, então todos os eventos são mostrados. Se um evento específico for selecionado, todas as propriedades do evento serão mostradas na exibição. Algumas propriedades precisam ser expandidas clicando em [Clique para expandir] se forem muito detalhadas para serem mostradas em uma única célula.

O Contract ComboBox filtra a exibição para mostrar apenas eventos relacionados a um recurso extensível específico. Ele também filtra o Event ComboBox para conter apenas os nomes de eventos relacionados ao recurso extensível específico.

Clicar no botão Limpar tudo exclui todos os eventos atualmente mostrados na exibição.

Captura de ecrã da página Eventos.

Descrições das colunas
ID da extensão

A coluna Extension Id mostra a ID da extensão à qual a instância do evento está relacionada. É possível que essa célula fique vazia para alguns eventos se eles não pertencerem a uma extensão específica, mas se aplicarem ao IDE como um todo.

Item ID

A coluna Item Id mostra a ID do item de extensão ao qual a instância do evento está relacionada. Por exemplo, o Item Id para o evento Commands - Executing seria a ID do comando que foi executado.

Propriedades

A coluna Propriedades mostra o conjunto de propriedades relacionadas com essa instância do evento que podem ser exibidas em uma única célula em um DataGrid. Propriedades mais detalhadas só seriam visíveis na caixa de diálogo Mais Informações ou alterando o Evento ComboBox para o nome do evento específico em que você está interessado.

Mais informações

A coluna Mais Informações exibe metadados mais detalhados relacionados a um evento. Clicar em uma célula nesta coluna abre uma caixa de diálogo modal contendo todos os metadados relacionados ao evento representado por essa linha.

Captura de ecrã da caixa de diálogo Mais informações.

Página de contextos do cliente

A página de contextos do cliente mostra o estado de várias propriedades relacionadas ao próprio IDE. O Context ComboBox altera os dados na exibição para mostrar todas as restrições de ativação relacionadas ao item selecionado atualmente no Client Contexts ComboBox ou um log de todas as vezes que essas propriedades foram alteradas desde que a janela da ferramenta foi aberta. Quando o contexto Eventos é selecionado, o botão Limpar Tudo pode ser usado para apagar todos os eventos que estão a ser exibidos atualmente na vista.

Captura de ecrã da página Estado Atual da Restrição de Ativação.

Captura de ecrã da página Eventos da Restrição de Ativação.