Compartilhar via


Recomendações para projetar e criar um sistema de monitoramento

Aplica-se a esta recomendação da lista de verificação de Excelência Operacional Bem Arquitetada: Power Platform

OE:06 Projete e implemente um sistema de monitoramento para validar escolhas de design e embasar futuras decisões de design e de negócios. Este sistema captura e expõe telemetria operacional, métricas e logs emitidos pela carga de trabalho.

Este guia descreve as recomendações para projetar e criar um sistema de monitoramento. Para monitorar com eficiência sua carga de trabalho em termos de segurança, desempenho e confiabilidade, você precisa de um sistema abrangente com sua própria pilha que forneça a base para todas as funções de monitoramento, detecção e alertas.

Definições

Termo Definição
Logs Eventos do sistema gravados. Os logs podem conter diferentes tipos de dados em um formato de texto estruturado ou de forma livre. Eles contêm um carimbo de data/hora.
Métricas Valores numéricos que são coletados em intervalos regulares. As métricas descrevem alguns aspectos de um sistema em um determinado momento.

Estratégias-chave de design

Para implementar um design de sistema de monitoramento abrangente para sua carga de trabalho, siga estes princípios fundamentais:

  • Sempre que possível, aproveite as ferramentas de monitoramento fornecidas pela plataforma, que normalmente exigem pouca configuração e podem fornecer insights profundos sobre sua carga de trabalho que, de outra forma, seriam difíceis de obter.

  • Colete logs e métricas de toda a pilha da carga de trabalho. Todos os componentes e recursos low-code e code-first devem ser configurados para produzir dados padronizados e significativos, e esses dados precisam ser coletados.

  • Armazene os dados coletados em uma solução de armazenamento padronizada, confiável e segura.

  • Processe os dados armazenados para que possam ser processados por soluções de análise e visualização.

  • Analise os dados processados para determinar com precisão o estado da carga de trabalho.

  • Visualize o estado da carga de trabalho em painéis ou relatórios significativos para equipes de carga de trabalho e outros stakeholders.

  • Configure alertas acionáveis e outras respostas automáticas para limites definidos de forma inteligente para notificar as equipes de carga de trabalho quando surgirem problemas.

  • Inclua sistemas de monitoramento e alertas em suas práticas gerais de teste de carga de trabalho.

  • Garanta que os sistemas de monitoramento e alertas estejam no escopo para melhoria contínua. O comportamento do aplicativo e da configuração na produção oferece oportunidades de aprendizado contínuo. Incorpore essas lições em projetos de monitoramento e alertas.

  • Vincule os dados de monitoramento coletados e analisados ao seu sistema e fluxos de usuários para correlacionar a integridade dos fluxos com os dados, bem como a integridade geral da carga de trabalho. Analisar esses dados em termos de fluxos ajuda a alinhar sua estratégia de observabilidade com seu modelo de saúde.

  • Minimize o armazenamento de qualquer informação identificável para garantir que você esteja em conformidade com as leis e regulamentos. Se você precisar armazenar informações identificáveis, certifique-se de que, ao projetar sua solução, você leve em consideração os requisitos que permitem que indivíduos solicitem que suas informações sejam excluídas.

  • Nunca registre senhas de usuário ou outras informações que possam ser usadas para cometer fraudes de identidade. Limpe esses detalhes dos dados antes de armazená-los. Os requisitos normativos podem determinar que as informações coletadas para auditoria e segurança precisem ser arquivadas e salvas. Esses dados também são confidenciais e talvez precisem ser criptografados ou protegidos de outra forma para evitar adulteração.

Você deve automatizar todas as funções do sistema de monitoramento o máximo possível, e todas elas devem ser executadas continuamente, o dia todo, todos os dias.

Este pipeline de fluxo de trabalho ilustra o sistema de monitoramento:

Diagrama que mostra os estágios de um sistema de monitoramento abrangente como um pipeline.

Coleção

Você deve configurar todos os componentes da carga de trabalho, sejam eles low-code ou componentes code-first ou configurações de plataforma, como ambientes e políticas, para capturar telemetria e eventos como logs e métricas.

Os logs são úteis principalmente para detectar e investigar anomalias. Normalmente, os logs são produzidos pelo componente de carga de trabalho e depois enviados para a plataforma de monitoramento ou extraídos pela plataforma de monitoramento com automação.

As métricas são úteis principalmente para criar um modelo de integridade e identificar tendências no desempenho e na confiabilidade da carga de trabalho. As métricas também são úteis para identificar tendências no comportamento de uso de seus usuários. Essas tendências podem ajudar a orientar decisões sobre melhorias da perspectiva do cliente. Normalmente, as métricas são definidas na plataforma de monitoramento, e a plataforma de monitoramento e outras ferramentas sondam a carga de trabalho para capturar métricas.

Dados da carga de trabalho

Use a integração pronta para uso com Application Insights para coletar dados. Depois que o Application Insights for habilitado, você poderá ter uma visibilidade clara de eventos importantes, tanto em tempo real quanto historicamente.

Os logs de aplicativos dão suporte ao ciclo de vida do aplicativo de ponta a ponta. O registro em log é essencial para entender como o aplicativo opera em vários ambientes, quais eventos ocorrem e as condições sob as quais eles ocorrem.

Recomendamos que você colete logs e eventos do aplicativo em todos os ambientes principais. Separe os dados entre ambientes o máximo possível, usando armazenamentos de dados diferentes para cada ambiente, se isso for prático. Use filtros para garantir que ambientes não críticos não compliquem a interpretação dos logs de produção. Por fim, as entradas de log correspondentes no aplicativo devem capturar uma ID de correlação para suas respectivas transações.

Infraestrutura e dados de configuração

Para recursos de infraestrutura na sua carga de trabalho, certifique-se de coletar logs e métricas. Como Power Platform é uma oferta de plataforma como serviço (PaaS), você pode ter capacidade limitada de capturar logs relacionados à infraestrutura subjacente. No entanto, você pode capturar logs e análises sobre alterações de configuração e de política relacionadas a incidentes e à integridade da carga de trabalho.

Na medida do possível, colete logs de sua plataforma de nuvem. Você pode coletar logs de atividades para sua assinatura e logs de diagnóstico para o plano de gerenciamento.

Considerações de desempenho

Um aplicativo complexo e altamente escalonável pode gerar grandes volumes de dados. A quantidade de dados pode causar problemas de desempenho, dependendo do detalhamento do rastreamento no nível do aplicativo. A solução de telemetria não deve atuar como um gargalo e deve ser escalável à medida que o sistema se expande.

Análise

Depois de coletar dados de várias fontes, analise-os para avaliar o bem-estar geral do sistema. Para essa análise, tenha uma compreensão clara de:

  • Como estruturar dados com base em indicadores-chave de desempenho (KPIs) e outras métricas de desempenho que você definiu.
  • Como correlacionar os dados capturados em diferentes métricas e arquivos de log. Essa correlação é importante quando você está acompanhando uma sequência de eventos e pode ajudar a diagnosticar problemas.

Na maioria dos casos, sua carga de trabalho terá componentes diferentes e logs ou eventos serão capturados em diferentes formatos ou tabelas. Você deverá combinar com precisão os dados para criar uma compreensão da integridade geral da carga de trabalho.

Por exemplo, sua Power Platform solução pode consistir nos seguintes componentes:

  • Um aplicativo de tela que permite aos usuários interagir com os dados
  • Um aplicativo baseado em modelo que permite aos administradores configurar as configurações do aplicativo
  • Um fluxo da nuvem que executa operações de dados
  • Uma instância que armazena dados associados à operação Dataverse
  • Uma função do Azure que recupera dados do armazenamento de tabelas do Azure e é chamada do aplicativo

Os dados de uso para uma única operação comercial podem abranger todos os componentes da carga de trabalho. Essas informações devem ser correlacionadas para fornecer uma visão geral do uso do recurso e do processamento para a operação.

Recomendações para análise de dados

Correlacione logs em nível de aplicativo e de recurso. Avalie dados em ambos os níveis para otimizar a detecção e a solução de problemas.

Defina tempos de retenção claros no armazenamento para análise cold. Recomendamos essa prática para permitir a análise histórica em um período específico. Ela também pode ajudar você a controlar os custos de armazenamento. Implemente processos que garantam que os dados sejam arquivados em um armazenamento mais barato e agregue dados para análise de tendências de longo prazo.

Analise tendências de longo prazo para prever problemas operacionais. Avalie dados de longo prazo para formar estratégias operacionais e também para prever quais problemas operacionais provavelmente ocorrerão e quando. Por exemplo, você pode observar que os tempos médios de resposta estão aumentando lentamente ao longo do tempo e se aproximando do alvo máximo.

Visualização

A visualização no monitoramento de integridade é fundamental para entender o estado da carga de trabalho. A visualização pode ajudar você a identificar rapidamente problemas e tendências, além de ajudar a entender o efeito das alterações feitas na carga de trabalho.

Dashboards

A maneira mais comum de visualizar dados é usar painéis que podem exibir informações na forma de tabelas ou gráficos. Esses itens podem ser parametrizados, e um analista pode selecionar os parâmetros importantes, como o período de tempo, para qualquer situação específica.

Alinhe seus painéis com seu modelo de integridade para que eles indiquem quando a carga de trabalho ou os componentes da carga de trabalho estão íntegros, degradados ou não íntegros.

Para que um sistema de painéis funcione com eficiência, ele deve ser significativo para a equipe da carga de trabalho. Visualize informações relacionadas à integridade da carga de trabalho que também sejam acionáveis. Quando a carga de trabalho ou um componente está degradado ou não está íntegro, os membros da equipe da carga de trabalho devem poder identificar facilmente onde na carga de trabalho o problema se origina e iniciar as ações corretivas ou as investigações. Por outro lado, incluir informações que não são acionáveis ou que não estão relacionadas à integridade da carga de trabalho pode tornar o painel desnecessariamente complexo e frustrante para os membros da equipe que estão tentando discernir o ruído de fundo dos dados acionáveis.

Você pode ter painéis para stakeholders ou desenvolvedores que são personalizados para mostrar dados somente sobre a carga de trabalho que consideram relevantes. Certifique-se de que a equipe da carga de trabalho entenda os tipos de pontos de dados que outras equipes estão interessadas em ver e visualize os painéis antes de compartilhá-los para verificar a clareza. Fornecer painéis sobre sua carga de trabalho para as partes interessadas é uma boa maneira de mantê-las informadas sobre a integridade da carga de trabalho, mas traz o risco de ser contraproducente se as partes interessadas não entenderem claramente os dados.

Restrinja o acesso ao painel ao pessoal autorizado. As informações nos painéis podem ser confidenciais. Você também deve proteger os dados subjacentes para evitar que os usuários os alterem.

Relatando

Os relatórios são usados para gerar uma visão geral do sistema. Ela pode incorporar dados históricos e informações atuais. Os requisitos de relatórios se enquadram em duas grandes categorias: relatórios operacionais e relatórios de segurança.

Os relatórios operacionais normalmente incluem:

  • Estatísticas agregadas que você pode usar para entender a utilização de recursos do sistema geral ou de subsistemas especificados durante uma janela de tempo especificada.
  • Identificar tendências no uso de recursos para o sistema geral ou subsistemas especificados durante um período especificado.
  • Exceções de monitoramento que ocorreram em todo o sistema ou em subsistemas especificados durante um período especificado.
  • Determinar a eficiência da aplicação para os recursos implantados e entender se o volume de recursos e seus custos associados podem ser reduzidos sem afetar o desempenho desnecessariamente.

Os relatórios de segurança rastreiam o uso do sistema pelo cliente. Eles podem incluir:

  • Auditoria de operações do usuário. Esta tarefa requer o registro das solicitações individuais que cada usuário conclui, juntamente com datas e horas. Os dados devem ser estruturados para permitir que um administrador reconstrua rapidamente a sequência de operações que um usuário conclui durante um período especificado.
  • Rastreamento do uso de recursos pelo usuário. Este tarefa requer o registro de como cada solicitação de um usuário acessa os vários recursos no sistema e por quanto tempo. Um administrador pode usar esses dados para gerar um relatório de utilização, por usuário, por um período especificado, possivelmente para fins de cobrança.

Alertas

Para ajudar a garantir que o sistema permaneça íntegro, responsivo e seguro, defina alertas para que os operadores possam respondê-los em tempo hábil. Um alerta pode conter informações contextuais suficientes para ajudá-los a iniciar rapidamente as atividades de diagnóstico.

Recomendações para alertas

  • Defina um processo de resposta a alertas que identifique os proprietários e as ações responsáveis.
  • Configure alertas para um escopo bem definido e ajuste o detalhamento para minimizar o ruído.
  • Use uma solução de alertas automatizada, como Splunk ou Azure Monitor, em vez de exigir que as pessoas procurem ativamente por problemas.
  • Use alertas para operacionalizar processos de correção. Por exemplo, crie tíquetes automaticamente para rastrear problemas e soluções.

Limites

Os alertas são gerados quando os limites são ultrapassados, conforme detectado pelo sistema de monitoramento. Certifique-se de que os limites definidos geralmente deem a você tempo suficiente para implementar as alterações necessárias em sua carga de trabalho para evitar degradação ou interrupções. Você também deve implementar o tratamento de erros necessário e detectar erros conhecidos em sua carga de trabalho para reduzir o número de alertas. Por exemplo, configure políticas de repetição para suas ações em fluxos de nuvem para que uma nova tentativa seja feita como parte da execução do fluxo e somente se tentativas repetidas falharem e a falha do fluxo for registrada e um alerta for enviado. Saiba mais em Recomendações para projetar uma estratégia confiável de monitoramento e alerta.

Facilitação do Power Platform

O Power Platform se integra ao Application Insights, que faz parte do ecossistema do Azure Monitor. Use essa integração para:

  • Receber telemetria sobre diagnóstico e desempenho capturados pela plataforma do Dataverse no Application Insights. É possível assinar para receber telemetria sobre operações realizadas pelos aplicativos no banco de dados do Dataverse e em aplicativos baseados em modelo. Essa telemetria fornece informações que é possível usar para realizar o diagnóstico e solucionar problemas relacionados aos erros e ao desempenho.

  • Conecte seus aplicativos de tela ao Application Insights. Você pode usar essa análise para realizar o diagnóstico de problemas e compreender o que os usuários fazem com os aplicativos. É possível coletar informações para a tomar decisões comerciais melhores e aprimorar a qualidade de seus aplicativos.

  • Configure Power Automate telemetria para fluir para Application Insights. Por exemplo, você pode monitorar execuções de fluxo da nuvem e criar alertas para falhas de execução do Cloud-Flow.

  • Capture dados de telemetria do seu Microsoft Copilot Studio copiloto para uso no Azure Application Insights. Você pode usar essa telemetria para monitorar mensagens registradas e eventos enviados de e para seu copiloto, tópicos a serem acionados durante conversas do usuário e eventos de telemetria personalizados que podem ser enviados de seus tópicos.

Power Platform recursos registram atividades no Microsoft portal de conformidade do Purview. A maioria dos eventos estará disponível 24 horas depois da atividade. Não use essas informações no monitoramento em tempo real. Para obter mais informações sobre como registrar atividades no Power Platform, consulte:

Sua Power Platform carga de trabalho pode incluir recursos do Azure. Saiba mais em Recomendações para projetar e criar um sistema de monitoramento.

O kit de início do CoE do Power Platform é uma implementação de referência que contém um conjunto de componentes e ferramentas projetados para ajudar você a começar a desenvolver uma estratégia para adoção e suporte do Power Platform. Incluído no Kit Inicial do CoE está um rico conjunto de painéis. Saiba mais em Obtenha insights profundos sobre sua Microsoft Power Platform adoção com o painel Power BI CoE.

O Kit de Automação do Power Platform é um conjunto de ferramentas que agiliza o uso e o suporte do Power Automate para desktop em projetos de automação. O kit fornece ferramentas que ajudam a gerenciar projetos de automação e monitorá-los para estimar o dinheiro economizado e o ROI (retorno sobre o investimento). Parte do Automation Kit é o centro de controle, que complementa o recurso Monitor fluxo da área de trabalho runs. O foco principal do centro de controle é uma exibição do orquestrador para analistas de suporte e organizações monitorar, tomar uma medida e alertar quando necessário.

Próximas etapas