Monitorando aplicativos

Esta seção descreve como usar o AppFabric Dashboard para monitorar a integridade e o tempo de vida de seus aplicativos .NET Framework que incluem os serviços WCF e/ou WF. O AppFabric Dashboard é o ponto principal dentro do Windows Server AppFabric para monitorar e solucionar problemas de serviços .NET Framework versão 4. Os dados apresentados no AppFabric Dashboard fornecem a você métricas ao vivo (tempo real) e históricas de seus serviços. As métricas ao vivo fornecem informações atuais sobre seus fluxos de trabalho duráveis e permitem que seus estados sejam controlados. As métricas históricas do dashboard fornecem visibilidade da integridade de seus serviços em um período de tempo específico.

O AppFabric Dashboard apresenta as seguintes informações para ajudá-lo a compreender mais completamente o estado dos serviços .NET Framework gerenciados por AppFabric:

  • O AppFabric Dashboard rastreia instâncias de fluxos de trabalho duráveis e apresenta dados de status sobre quantos estão sendo executados (ativos ou inativos) ou suspensos. O AppFabric Dashboard também fornece recursos detalhados para observar instâncias WF individuais persistidas e permite que você emita seus próprios comandos em fluxos de trabalho persistidos para controlar sua execução.

  • Os serviços WF são rastreados em vários níveis de detalhamento por AppFabric armazenando os eventos que eles emitem durante a execução normal. O AppFabric Dashboard fornece visibilidade sobre a integridade histórica de serviços WF com o monitoramento habilitado no nível de Monitoramento da Integridade ou superior.

  • Todos os serviços WCF e WF em .NET Framework usam WCF para comunicação com clientes e outros serviços. O AppFabric Dashboard monitora e exibe totais cumulativos de êxitos e exceções como resultado de chamadas WCF recebidas. Ele também exibe informações sobre chamadas com falha associadas às exceções do serviço.

O AppFabric Dashboard fornece métricas para os serviços implantados no servidor AppFabric local, bem como em quaisquer servidores AppFabric remotos em um farm de servidores que são configurados para usar os mesmos repositórios de persistência e monitoramento. O AppFabric permite que você filtre métricas por servidor local ou todos os servidores. Você também pode usar o AppFabric Dashboard para ajustar o intervalo de tempo dos dados exibidos em horas, dias, semanas ou o histórico de tempo total do repositório de monitoramento para os servidores selecionados.

Seções do AppFabric Dashboard

O AppFabric Dashboard é dividido em três categorias principais: Instâncias WF Persistentes, Histórico de Chamadas de WCF e Histórico de Instâncias WF. Cada seção fornece uma função específica, e as seções podem ser combinadas de forma lógica para apresentar uma imagem mais detalhada do tempo de vida de um serviço ou de um problema de ocorreu. Os dados históricos ou ao vivo são apresentados nas diversas seções. Você pode recolher ou expandir uma seção clicando nas setas para cima e para baixo correspondentes no lado superior direito.

As métricas de resumo exclusivas são exibidas nas diferentes seções dentro de cada seção. Por exemplo, na seção Histórico de Chamadas de WCF, há três métricas de chamada de resumo: Concluído, Erros e Ocorrências de Limitação. Clicar em um valor de resumo leva você à página detalhada relacionada à essa seção. Na seção Histórico de Chamadas de WCF, clicar em qualquer uma das três métricas de resumo leva você à página Eventos Controlados. Embora todas as três métricas levem você à mesma página, os dados exibidos provavelmente serão diferentes porque cada métrica mapeia uma consulta específica em relação aos dados do evento armazenados no repositório de monitoramento. A lista a seguir descreve cada seção e as relações entre seus valores de resumo e páginas de métricas.

O Dublin Dashboard

  • Instâncias WF Persistentes. Esta seção exibe um resumo “ao vivo” de instâncias de serviço do fluxo de trabalho durável Ativa, Ociosa ou Suspensa exibindo o status do repositório de persistência no momento que o AppFabric Dashboard foi exibido. Para que um fluxo de trabalho durável, configurado adicionalmente, use o monitoramento, suas métricas históricas também são refletidas em outras duas seções do AppFabric Dashboard. Clicar em qualquer um desses links de resumo leva você até a Página Instâncias WF Persistentes correspondente. Expandir a seção Instâncias WF Persistentes exibe os cinco principais serviços de fluxo de trabalho Ativa ou Ociosa ou Suspensa do .NET Framework 4 com as instâncias Ativas ou Ociosas ou Suspensas. Para obter mais informações sobre como os fluxos de trabalho persistentes são monitorados, consulte Monitoramento em tempo real de fluxos de trabalho duráveis.

    Dica

    O AppFabric não oferece suporte à persistência de instâncias de serviço WCF. Somente as instâncias de serviço de fluxo de trabalho (WF) podem usar o recurso de persistência AppFabric.

  • Histórico de Chamadas de WCF. Esta seção exibe um resumo do histórico de chamadas do WCF nos serviços WCF e WF do .NET Framework com o monitoramento habilitado. Ela fornece um resumo de todas Chamadas Concluídas, Erros e Ocorrências de Limitação do WCF no período de tempo selecionado na lista suspensa Período de tempo. Clicar em qualquer um desses links de resumo leva você à Página de Eventos Controlados correspondente com dados do resultado da consulta específicos à categoria de origem. Expandir a seção Histórico de Chamadas de WCF exibe os cinco principais serviços com Chamadas WCF Concluídas e Exceções de Serviço WCF. Ela também fornece uma divisão de Erros por Exceções de Serviço (a maioria causada por Chamadas com Falha e Falhas em Chamadas) e Erros Definidos pelo Usuário. Para obter mais informações, consulte Monitoramento de histórico usando métricas de chamada do WCF.

  • Histórico de Instâncias WF. Esta seção exibe um resumo histórico de Ativações, Falhas e Conclusões para instâncias de serviço de fluxo de trabalho .NET Framework 4 com monitoramento habilitado no período de tempo selecionado na lista suspensa Período de tempo. Clicar em qualquer um desses links de resumo o levará à Página Instâncias WF Rastreadas correspondente com dados do resultado da consulta específicos à categoria de origem. Expandir a seção Histórico de Instâncias WF exibe os cinco principais serviços WF com o número mais alto de Ativações de Instâncias e Instâncias com Falhas. Ela também divide o número de instâncias com falhas por resultado (recuperado versus não recuperado). Para obter mais informações, consulte Monitoramento de histórico usando métricas de fluxo de trabalho.

Métricas do AppFabric Dashboard

As métricas do AppFabric Dashboard são exibidas em serviços .NET Framework 4 WCF e WF hospedados por Serviço de Ativação de Processos do Windows (WAS) no nível selecionado ou “escopo” na hierarquia do IIS. Os diferentes níveis de escopo são servidor, site e aplicativo. O escopo é determinado selecionando um servidor, site ou aplicativo na hierarquia do IIS no painel Conexões do Gerenciador do IIS (painel à esquerda). A coleta de métricas exibidas nas seções é a mesma para cada escopo. Isso significa que você vê os mesmos nomes de métrica em cada escopo, mas os valores mudam de acordo com o que está incluído no escopo. Ao alterar o nível selecionado na hierarquia do IIS, você pode exibir métricas de instâncias de todos os serviços no servidor ou site, ou você pode exibir métricas relacionadas a somente um aplicativo selecionado. A quantidade de dados de monitoramento exibidos em uma exibição específica corresponde a valores configurados na guia Monitoramento dentro da caixa de diálogo Configurar WCF e WF para o escopo específico.

Dica

Se o nível de Monitoramento dos aplicativos participantes for definido como Monitoramento da Integridade ou superior, a quantidade de dados exibidos pelo AppFabric Dashboard não mudará. No entanto, alterar o escopo para inclui um número diferente de serviços com o monitoramento habilitado mudará as métricas.

Para obter mais informações sobre configuração de escopo e métricas, consulte Configurar o WCF e o WF para o Servidor, Site ou Aplicativo: Guia Monitoramento e Caixa de diálogo de configuração para um servidor, site, aplicativo e diretório virtual.

Padrões de Monitoramento e Persistência

Quando um serviço .NET Framework 4 é instalado no AppFabric, os dois padrões de Monitoramento a seguir são configurados automaticamente em seu nome. Você pode alterar suas configurações usando a guia Monitoramento nas caixas de diálogo de servidor, site, aplicativo ou configuração de serviço. Para obter mais informações, consulte Configurar o WCF e o WF para o Servidor, Site ou Aplicativo: Guia Monitoramento e Configurar Serviço: Guia Monitoramento.

  • Nível de Monitoramento. Por padrão, o monitoramento é habilitado para todos os serviços. O nível padrão de monitoramento é configurado como Monitoramento da Integridade, que é a metade de cinco configurações para Monitoramento (Solução de Problemas, Monitoramento Completo, Monitoramento da Integridade, Somente Erros e Desativado). Monitoramento da Integridade é a melhor opção de desempenho para o Monitoramento da Integridade diário das métricas de um aplicativo. Ele também é o requisito mínimo para todas as métricas no dashboard a ser usado. Elas incluem o controle de fluxo de mensagem entre serviços, eventos WCF e WF e outros eventos. Também inclui erros do nível Somente Erros menos detalhado para ajudar na solução de problemas simplificada. Se ocorrer um problema, você poderá aumentar a quantidade de dados de monitoramento habilitando um nível mais detalhado de monitoramento, resolver o problema e restaurar o nível de monitoramento para a configuração padrão Monitoramento da Integridade. Para obter mais informações sobre níveis de monitoramento e como escolher o nível mais adequado para seus requisitos de monitoramento, consulte Configurar monitoramento.

    Os dados de monitoramento são coletados pelo Serviço de Coleta de Eventos e gravados no repositório de monitoramento padrão usando a cadeia de conexão DefaultMonitoringConnectionString. Esses dados correspondem ao que é exibido na Página Eventos Rastreados. Na guia Monitoramento, Habilitar coleta de eventos de banco de dados é habilitado por padrão e a página Eventos Controlados exibe todos os dados disponíveis de qualquer repositório de monitoramento configurado. Se você desabilitar a coleta de eventos, não poderá mais ver o avanço de nenhum evento novo. Porém, se ainda houver eventos controlados do passado no repositório, você os verá na página Eventos Controlados. Para evitar a exibição desses eventos antigos, você deve remover manualmente a cadeia de conexão existente da configuração. Para obter mais informações, consulte Configurar o Serviço de Coleta de Eventos.

    Quando você configurar um determinado nível de monitoramento, o perfil de rastreamento padrão correspondente para esse nível será habilitado. Um perfil de rastreamento é uma definição declarativa de filtros em um tipo de evento e as informações desejadas a serem obtidas na instância de Fluxo de Trabalho. Você também poderá gravar perfis de rastreamento personalizados se os perfis padrão não atenderem aos seus requisitos de monitoramento. Para obter mais informações sobre perfis de rastreamento e como configurá-los, consulte Configurar acompanhamento.

  • Rastreamento e Registro em Log de Mensagem de Diagnóstico. Diferente de Coleta de Eventos do Banco de Dados e Nível de Monitoramento, Rastreamento e Registro em Log de Mensagem de Diagnóstico é desabilitado por padrão. Em vez de enviar dados para o repositório de monitoramento, essa função envia dados para um arquivo configurável que pode ser exibido pelo utilitário Visualizador de Rastreamento de Serviço. A configuração Rastreamento e Registro em Log de Mensagem de Diagnóstico não tem efeito sobre o que é exibido no dashboard. Em vez disso, ele é um mecanismo adicional além do AppFabric Dashboard que ajuda a solucionar problemas usando mecanismos de rastreamento e registro em log do .NET Framework. Para obter mais informações sobre a configuração desse recurso, consulte a Caixa de Diálogo Configurar Rastreamento de Diagnóstico e Log de Mensagens.

Além dos recursos de monitoramento padrão, o AppFabric também fornece funcionalidade de persistência padrão. Quando um serviço WF .NET Framework 4 é instalado no AppFabric, a persistência é configurada automaticamente em seu nome por padrão. Como as configurações de monitoramento, você pode alterar configurações de persistência de um fluxo de trabalho usando a guia Persistência nas caixas de diálogo de servidor, site, aplicativo ou configuração de serviço. A persistência de Fluxo de Trabalho é gravada no repositório de persistência padrão usando a cadeia de conexão DefaultPersistenceConnectionString. Para obter mais informações, consulte Configurar o WCF e o WF para o Servidor, Site, Aplicativo ou Diretório Virtual: Guia Persistência de Fluxo de Trabalho e Configurar Serviço: Guia Persistência de Fluxo de Trabalho.

Repositórios de Monitoramento e Persistência e Métricas do Dashboard

As métricas do AppFabric Dashboard são obtidas dos repositórios de monitoramento e persistência. Pode haver mais de um repositório de monitoramento ou persistência no escopo atual, dependendo de como a persistência e o monitoramento estão configurados. Se os serviços são configurados para usar repositórios diferentes, o dashboard exibe as métricas combinadas para todos os repositórios associados aos serviços no escopo atual. As métricas de Instância WF Persistente são um resumo dos dados de estado de fluxo de trabalho de um ou mais repositório de persistência. As métricas de Instâncias WF Controladas e Histórico de Chamadas de WCF são um resumo de um ou mais repositórios de monitoramento.

Importante

Sob carga, a tabela de preparo no banco de dados de monitoramento pode criar uma lista de pendências de registros a serem processados pelos trabalhos do SQL Agent. Isso faz com que as informações exibidas no AppFabric Dashboard fiquem desatualizadas por dez minutos ou mais. Além disso, se você restringir o período de tempo para um período recente mais limitado (em vez do padrão de 24 horas), você não verá nenhuma nova transação, pois elas também estão na lista de pendências.

  • Instância WF Persistente. Essas métricas exibem o status atual das instâncias de fluxo de trabalho persistentes de um ou mais repositórios de persistência quando o dashboard é chamado. Para que um fluxo de trabalho tenha seus informações apresentadas nessa seção, ele deverá ser designado para usar persistência. Fluxos de trabalho demorados ou aqueles que operam dados críticos confidenciais ou calculados que precisam ser preservados durante o tempo de vida do fluxo de trabalho têm mais probabilidade de usar persistência .NET Framework 4. Normalmente, os fluxos de trabalho que não usam persistência são executados rapidamente e a preservação de seu estado não será crítica se o processo existir inadvertidamente.

    Além disso, a persistência deve ser configurada para um serviço WF de dentro do AppFabric para usar a funcionalidade de persistência do AppFabric. O AppFabric fornece a capacidade de hospedar fluxos de trabalho gravados para serem duráveis com recursos de persistência por meio do seu repositório de persistência e ferramentas de monitoramento. Para obter informações sobre como habilitar a persistência do AppFabric para um serviço, consulte Configurando persistência de Fluxo de Trabalho.

  • Histórico de Chamadas de WCF. Essas métricas são um resumo histórico do número de chamadas concluídas, erros e ocorrências de limitação de WCF de um ou mais repositórios de monitoramento para os serviços dentro do escopo do AppFabric Dashboard selecionado. Para controlar esses dados, a coleta de eventos do AppFabric deve estar habilitada para o serviço. Para obter informações sobre como habilitar a coleta de eventos para um serviço, consulte Configurar o Serviço de Coleta de Eventos.

  • Histórico de Instâncias WF. Essas métricas são um resumo histórico de instâncias WF controladas de um ou mais repositórios de monitoramento. Ativações, Falhas e Conclusões para as instâncias de serviço de fluxo de trabalho .NET Framework 4 são resumidos. Para controlar esses dados, um nível de monitoramento do AppFabric maior que ou igual a Monitoramento da Integridade deve estar habilitado. Para obter informações sobre como habilitar um nível de monitoramento para um serviço, consulte Configurando monitoramento.

A tabela a seguir resume quando as métricas do AppFabric Dashboard são exibidas para um serviço WF baseadas em sua configuração.

Tipo de serviço .NET Framework Persistência configurada Nível de monitoramento válido configurado Métricas da Seção de Instâncias WF Persistentes (Página de Instâncias WF Persistentes) Métricas de Histórico de Chamadas de WCF (Página Eventos Controlados) Métricas da seção de histórico da instância WF (Página de instâncias WF rastreadas)

Serviço WF

NÃO

NÃO

NÃO

NÃO

NÃO

Serviço WF

SIM

NÃO

SIM

NÃO

NÃO

Serviço WF

SIM

SIM

SIM

SIM

SIM

Serviço WF

NÃO

SIM

NÃO

SIM

SIM

A tabela a seguir resume quando as métricas do AppFabric Dashboard são exibidas para um serviço WCF puro (sem fluxo de trabalho) baseadas em sua configuração. Como AppFabric não oferece nenhum suporte para persistência de serviços WCF, a única seção que exibe dados para ele é Histórico de Chamadas de WCF.

Tipo de serviço .NET Framework Persistência configurada Nível de monitoramento válido configurado Métricas da Seção de Instâncias WF Persistentes (Página de Instâncias WF Persistentes) Métricas de Histórico de Chamadas de WCF (Página Eventos Controlados) Métricas da seção de histórico da instância WF (Página de instâncias WF rastreadas)

Serviço WCF Puro

N/A

NÃO

NÃO

NÃO

NÃO

Serviço WCF Puro

N/A

SIM

NÃO

SIM

NÃO

Eventos WCF definidos pelo usuário

O .NET Framework 4 fornece a capacidade de inserir programaticamente eventos de usuário Windows Communication Foundation (WCF) no fluxo de eventos ETW (Rastreamento de Eventos para Windows) fornecido pelo .NET Framework. Todos os eventos de usuário são emitidos e capturados por padrão em aplicativos configurados para usar pelo menos o nível de monitoramento Monitoramento da Integridade. No nível Somente Erros menos detalhado, somente o evento de usuário do erro WCF será emitido e capturado. O AppFabric coleta esses eventos de usuário WCF e os armazena em seu repositório de dados de monitoramento.  As informações de evento definidas pelo usuário podem ser exibidas em duas páginas.

  • A página AppFabric Dashboard reflete a contagem de eventos de usuário emitidos no nível de severidade Erro em um determinado período de tempo no contador das métricas de resumo Erros.

  • A página Eventos Controlados exibe todos os eventos definidos pelo usuário, relacionados ao erro ou não, quando o campo Eventos tiver a opção Todos os eventos WCF selecionada ou quando nenhum campo Eventos estiver especificado no Controle de Consulta. O Construtor de Consultas tem a sub-opção de erros definidos pelo usuário WCF na opção Todos os erros de WCF para a condição Eventos. Quando um evento de erro definido pelo usuário é selecionado na página Eventos Controlados, o erro é exibido na guia Erros no painel Detalhes.

Para obter uma amostra que exibe como adicionar programaticamente eventos do usuário ao fluxo ETW, consulte Rastreamento Analítico WCF (a página pode estar em inglês) (https://go.microsoft.com/fwlink/?LinkId=184956).

Suporte do AppFabric Dashboard a Vários Repositórios

O AppFabric Dashboard oferece suporte à exibição de dados em vários repositórios de dados de monitoramento e persistência. O AppFabric Dashboard presume que os dados de persistência de um determinado serviço residem em um único repositório de persistência e os dados de monitoramento de um determinado aplicativo devem residir em um único repositório de dados de monitoramento. Ao usar mais de um repositório de monitoramento ou persistência, os dados antigos devem ser removidos do repositório original quando o aplicativo ou serviço mudar de repositório. Em cenários quando o repositório original ainda é usado por outros aplicativos ou serviços em seu ambiente, a falha ao fazer isso pode levar a resultados inesperados ou inconsistentes.

Um exemplo pode ajudar você a entender o problema. Suponha que aplicativos que incluem serviços WCF e/ou WF 1 e 2 são configurados para usar o repositório de dados de monitoramento X.  O aplicativo 1 é reconfigurado mais tarde para usar o repositório de dados de monitoramento Y em vez do X, e seu aplicativo 1 antigo permanece no repositório de dados de monitoramento X. Ao exibir o AppFabric Dashboard no escopo do aplicativo, as métricas do aplicativo 1 exibem corretamente os dados de seu repositório Y atual porque somente um repositório de monitoramento pode ser associado a um aplicativo. No entanto, ao exibir o AppFabric Dashboard no nível de servidor ou site, os contadores incluem os dados corretos do aplicativo 1 em seu repositório Y atual, e os dados antigos em seu repositório X antigo.

Neste exemplo, o procedimento adequado é limpar os dados do aplicativo 1 no repositório de monitoramento X antigo ao configurar seu aplicativo para usar o novo repositório de monitoramento Y. Isso garante que o AppFabric Dashboard forneça as informações corretas no aplicativo 1. Você pode executar essa limpeza no nível de banco de dados usando as ferramentas e os métodos apropriados do banco de dados.

Consultas com diferenciação de maiúsculas e minúsculas

Quando o banco de dados de monitoramento do SQL Server está configurado para usar agrupamento binário, os parâmetros de qualquer consulta que use o Criador de Consultas do AppFabric Dashboard fazem diferenciação de maiúsculas e minúsculas. Nesse caso, deve ser especificada a letra exata da cadeia para Nome do Computador, Site e Caminho Virtual ao fornecer cláusulas de consulta no Criador de Consultas do AppFabric Dashboard. Para evitar o problema de diferenciação de maiúsculas e minúsculas, você pode alterar manualmente a ASEventSourcesTable, que contém comandos, como Computer, Site, VirtualPath, ApplicationVirtualPath e ServiceVirtualPath, para que seja um agrupamento sem diferenciação de maiúsculas e minúsculas.

Nesta seção

Consulte também

Conceitos

Gerenciando um aplicativo

  2011-12-05