Marcadores da Visualização Simultânea
Na Visualização Simultânea, os marcadores são ícones que representam os eventos em um aplicativo. Normalmente, o aplicativo gera esses eventos para designar fases ou ocorrências em um aplicativo. Os eventos podem ser gerados pelo aplicativo ou por bibliotecas e runtimes que o aplicativo usa.
Tipos de marcadores
A Visualização Simultânea usa três tipos de marcadores para representar eventos do aplicativo: sinalizadores, mensagens e intervalos.
Use um sinalizador para indicar um ponto no tempo interessante em seu aplicativo. Por exemplo, é possível usar um sinalizador para representar que o valor de uma variável atingiu um certo limite ou que uma exceção foi lançada.
Uma mensagem também marca um ponto no tempo, mas é possível usá-la para rastreamento de estilo do log. Por exemplo, o que pode ter sido despejado em um arquivo de log agora pode ser encapsulado em uma chamada de mensagem para poder rastreá-la e visualizá-la na Visualização Simultânea. Também é possível usar a Visualização Simultânea para exportar esses dados para um arquivo CSV.
O intervalo representa um intervalo de tempo em seu aplicativo, por exemplo, uma das suas fases.
Vinculação de marcador para threads
Cada thread que gera marcadores tem um canal separado de linha do tempo. A ID do thread responsável por gerar os eventos de marcador é mostrada ao lado da descrição do canal do marcador. A ID mostrada no lado esquerdo do canal do marcador corresponde à ID de outro thread no processo atual.
Importância do marcador
Os marcadores podem ter um dos quatro níveis de importância: baixa, normal, alta e crítica. É possível filtrar as fontes de marcadores com base no nível de importância. Por exemplo, se você só desejar ver os marcadores de uma fonte específica que tem importância normal ou crítica, será possível configurar o filtro na caixa de diálogo Configurações avançadas. A importância de um marcador é exibida em sua dica de ferramenta e no Relatório de Marcadores.
Categoria de marcador
Uma categoria de marcador indica um grupo de eventos de marcador que vêm da mesma fonte. A Visualização Simultânea usa cor para diferenciar diferentes categorias de sinalizadores e intervalos. É possível configurar a Visualização Simultânea para usar categorias para filtrar os eventos de marcador em um provedor de eventos específico. Use a caixa de diálogo Configurações Avançadas para configurar o filtro.
Fontes conhecidas de marcadores
Qualquer provedor ETW pode gerar marcadores, desde que os provedores obedeçam a determinadas restrições. É possível configurar a Visualização Simultânea para escutar outras fontes de evento para marcadores. Por padrão, ele escuta estas fontes de evento:
C++ AMP (C++ Accelerated Massive Parallelism)
É possível usar a guia Marcadores na caixa de diálogo Configurações Avançadas para controlar se os marcadores de várias fontes são exibidos na Visualização Simultânea e é possível filtrá-los com base na importância e na categoria.
Marcadores de EventSource
A Visualização Simultânea também pode exibir eventos EventSource. Para obter mais informações, confira Visualizar eventos EventSource como marcadores.
Marcadores de sinalizador
Um marcador de sinalizador representa algo que ocorreu em um instante de tempo em um aplicativo. Um sinalizador pode representar muitos tipos de eventos de aplicativo. Por exemplo, um sinalizador pode mostrar quando um determinado item de trabalho foi agendado ou quando uma exceção foi lançada. Runtimes, como a Biblioteca de Paralelismo de Tarefas, também podem gerar sinalizadores.
Importância do sinalizador
Sinalizadores são exibidos em tamanhos diferentes dependendo de sua importância. Como qualquer marcador, a importância pode ser baixa, normal, alta ou crítica. Esta ilustração mostra a aparência dos marcadores segundo seu nível de importância:
Categoria do sinalizador
Um sinalizador pode ser exibido em cinco cores diferentes, dependendo de sua categoria. As cores são reutilizadas se houver mais de cinco categorias. Não é possível escolher a cor. Como qualquer marcador, a categoria pode ser qualquer inteiro. A ilustração a seguir mostra as cores das cinco primeiras categorias.
Alertas
Um alerta é um sinalizador vermelho que representa um evento crítico do aplicativo, como uma exceção. Este é um alerta:
Sinalizadores de agregação
Às vezes, os sinalizadores ocorrem tão próximos uns dos outros na Visualização Simultânea que não podem ser desenhados individualmente. Quando isso ocorre, um sinalizador agregação cinza, que representa os sinalizadores subjacentes, é exibido. Quando você posiciona o ponteiro em desses ícones, uma dica de ferramenta exibe o número de sinalizadores subjacentes representados. Para exibir os sinalizadores, amplie. Se ampliar completamente e ainda obtiver um sinalizador de agregação, você pode exibir os sinalizadores subjacentes no Relatório de marcadores.
Sinalizadores de agregação são desenhados em tamanhos diferentes. O tamanho depende do nível de importância do sinalizador mais importante da agregação. A ilustração a seguir mostra sinalizadores de agregação em ordem crescente de importância.
Marcadores de mensagem
Um marcador de mensagem representa a saída de log. Uma mensagem é uma cadeia de caracteres emitida por um thread específico em um momento específico. Você pode exportar as mensagens para um arquivo de texto para usar com outras ferramentas. Você pode deixar o ponteiro em uma mensagem na Visualização Simultânea para exibir a cadeia de caracteres de mensagem. E você pode exibir todos os marcadores de mensagem no Relatório de marcadores. A ilustração a seguir mostra um marcador de mensagem.
Marcadores de agregação de mensagem
Às vezes, ocorrem várias mensagens tão próximas entre si na Visualização Simultânea que elas não podem ser desenhadas individualmente. Quando isso ocorre, um marcador de agregação de mensagem que representa as mensagens subjacentes é mostrado. Quando você posiciona o ponteiro em desses ícones, uma dica de ferramenta exibe o número de mensagens subjacentes representadas. Para exibir as mensagens, amplie. Se ampliar completamente e ainda obtiver um sinalizador de agregação, você poderá exibir as mensagens subjacentes no Relatório de Marcadores.
Marcadores de período
Um marcador de período representa uma fase significativa de um aplicativo. Por exemplo, você pode usar um período para representar um intervalo de tempo durante o qual um item de trabalho específico está sendo processado. Seu comprimento representa a duração da fase de aplicativo correspondente. Esta ilustração mostra um período na Visualização Simultânea:
Categoria de período
Um marcador de período pode ser exibido em cinco cores diferentes, dependendo de sua categoria. As cores são repetidas se há mais de cinco categorias. A categoria pode ser qualquer inteiro. Esta ilustração mostra as cinco cores possíveis:
Marcadores de agregação de período
Às vezes, os marcadores de período ocorrem tão próximos uns dos outros na Visualização Simultânea que não podem ser desenhados individualmente. Quando isso ocorre, um marcador de agregação de período cinza que representa os períodos subjacentes é mostrado. Quando você posiciona o ponteiro em desses ícones, uma dica de ferramenta exibe o número de períodos subjacentes representados. Para exibir os períodos, amplie. Se você ampliar completamente e ainda obtiver um marcador de agregação de período, você poderá exibir os marcadores de período subjacentes no Relatório de Marcadores. Esta ilustração mostra um marcador de agregação de período: