Recomendações para a conceção e criação de um sistema de controlo
Aplica-se a esta recomendação da lista de verificação do Power Platform Well-Architected Operational Excellence:
OE:06 | Conceção e implementação de um sistema de monitorização para validar as escolhas de conceção e informar as decisões de conceção e comerciais futuras. Este sistema captura e expõe telemetria operacional, métricas e registos emitidos pela carga de trabalho. |
---|
Este guia descreve as recomendações para a conceção e criação de um sistema de monitorização. Para monitorizar eficazmente a sua carga de trabalho em termos de segurança, desempenho e fiabilidade, é necessário um sistema abrangente com a sua própria pilha que forneça a base para todas as funções de monitorização, deteção e alerta.
Definições
Termo | Definição |
---|---|
Registos | Eventos de sistema registados. Os registos podem conter diferentes tipos de dados num formato de texto estruturado ou de forma livre. Contêm um carimbo de data/hora. |
Métricas | Valores numéricos que são recolhidos a intervalos regulares. As métricas descrevem alguns aspetos de um sistema num determinado momento. |
Principais estratégias de design
Para implementar uma conceção de sistema de monitorização abrangente para a sua carga de trabalho, siga estes princípios fundamentais:
Sempre que possível, aproveite as ferramentas de monitorização fornecidas pela plataforma que, normalmente, exigem pouca configuração e podem fornecer informações detalhadas sobre a sua carga de trabalho que, de outra forma, poderiam ser difíceis de obter.
Recolha registos e métricas de toda a pilha de cargas de trabalho. Todos os componentes e recursos low-code e code-first devem ser configurados para produzir dados padronizados e significativos, e esses dados têm de ser recolhidos.
Armazene os dados recolhidos numa solução de armazenamento padronizada, fiá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 exatidão o estado da carga de trabalho.
Visualize o estado da carga de trabalho em dashboards ou relatórios significativos para as equipas da carga de trabalho e outros intervenientes.
Configure alertas acionáveis e outras respostas automáticas a limiares definidos de forma inteligente para notificar as equipas da carga de trabalho quando surgem problemas.
Inclua sistemas de monitorização e alerta nas suas práticas gerais de teste da carga de trabalho.
Assegure que os sistemas de monitorização e alerta estão em condições de serem melhorados continuamente. O comportamento da aplicação e da configuração na produção proporciona oportunidades de aprendizagem contínua. Incorpore essas lições nas conceções de monitorização e alerta.
Associe os dados de monitorização que recolhe e analisa de volta aos fluxos de sistema e de utente 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 a sua estratégia de observabilidade com o seu modelo de integridade.
Minimize o armazenamento de quaisquer informações identificáveis para garantir o cumprimento das leis e regulamentos. Se precisar de armazenar informações identificáveis, certifique-se de que, ao conceber a sua solução, tem em conta os requisitos que permitem às pessoas pedir que as respetivas informações sejam eliminadas.
Nunca registe as palavras-passe dos utilizadores ou outras informações que possam ser utilizadas para cometer fraudes de identidade. Elimine estes detalhes dos dados antes de os armazenar. Os requisitos regulamentares podem ditar a necessidade de arquivar e guardar as informações recolhidas para efeitos de auditoria e segurança. Estes dados também são sensíveis e poderão ter de ser encriptados ou protegidos de outra forma para evitar adulterações.
Deve automatizar o mais possível todas as funções do sistema de monitorização e todas elas devem funcionar continuamente, todo o dia, todos os dias.
Este pipeline de fluxo de trabalho ilustra o sistema de monitorização:
Coleção
Deve configurar todos os componentes da carga de trabalho, sejam eles componentes low-code ou code-first ou configurações de plataforma, como ambientes e políticas, para capturar telemetria e eventos, como registos e métricas.
Os registos são principalmente úteis para detetar e investigar anomalias. Normalmente, os registos são produzidos pelo componente da carga de trabalho e, em seguida, enviados para a plataforma de monitorização ou obtidos pela plataforma de monitorização com a automatização.
As métricas são úteis principalmente para conceber um modelo de estado de funcionamento e identificar tendências no desempenho e fiabilidade da carga de trabalho. As métricas também são úteis para identificar tendências no comportamento de utilização dos seus utilizadores. Estas tendências podem ajudar a orientar as decisões sobre melhorias na perspetiva do cliente. Normalmente, as métricas são definidas na plataforma de monitorização, e a plataforma de monitorização e outras ferramentas pesquisam a carga de trabalho para capturar métricas.
Dados da carga de trabalho
Utilize a integração com o Application Insights de origem para recolher dados. Depois de ativado o Application Insights, pode obter uma visibilidade clara dos eventos importantes, tanto em tempo real como historicamente.
Os registos de aplicações suportam o ciclo de vida da aplicação de ponto a ponto. O registo é essencial para compreender como a aplicação funciona em vários ambientes, quais os eventos que ocorrem e as condições em que ocorrem.
Recomendamos que recolha registos de aplicações e eventos em todos os ambientes principais. Separe os dados entre ambientes, tanto quanto possível, utilizando diferentes arquivos de dados para cada ambiente, se tal for prático. Utilize filtros para garantir que os ambientes não críticos não complicam a interpretação dos registos de produção. Por fim, as entradas de registo correspondentes em toda a aplicação devem captar um ID de correlação para as respetivas transações.
Dados de infraestrutura e configuração
Para recursos de infraestrutura na sua carga de trabalho, certifique-se de que recolhe registos e métricas. Como o Power Platform é uma oferta de plataforma como serviço (PaaS), a sua capacidade de capturar registos relacionados com a infraestrutura subjacente pode estar limitada. No entanto, é possível capturar registos e análises sobre alterações de configuração e de políticas relacionadas com a integridade e os incidentes da carga de trabalho.
Tanto quanto possível, recolha registos da sua plataforma de cloud. Poderá ser possível recolher registos de atividade para a sua subscrição e registos de diagnóstico para o plano de gestão.
Considerações de desempenho
Uma aplicação complexa e altamente escalável pode gerar grandes volumes de dados. A quantidade de dados pode causar problemas de desempenho, dependendo de quão detalhado é o rastreio ao nível da aplicação. A solução de telemetria não pode atuar como um estrangulamento e tem de ser dimensionável à medida que o sistema expande.
Análise
Depois de recolhes dados de várias origens, analise-os para avaliar o bem-estar geral do sistema. Para esta análise, é necessário ter uma compreensão clara do seguinte:
- Como estruturar dados com base em indicadores-chave de desempenho (KPIs) e outras métricas de desempenho que definiu.
- Como correlacionar os dados capturados em diferentes métricas e ficheiros de registo. Esta correlação é importante quando se está a monitorizar uma sequência de eventos e pode ajudar a diagnosticar problemas.
Na maioria dos casos, a sua carga de trabalho terá diferentes componentes e os registos ou eventos serão capturados em diferentes formatos ou tabelas. Terá de combinar com precisão os dados para desenvolver compreensão do estado de funcionamento geral da carga de trabalho.
Por exemplo, a sua solução do Power Platform pode consistir nos seguintes componentes:
- Uma aplicação de tela que permite aos utilizadores interagir com os dados
- Uma aplicação condicionada por modelo que permite aos administradores configurar definições para a aplicação
- Um fluxo de cloud que executa operações de dados
- Uma instância de Dataverse que armazena os dados associados à operação
- Uma função do Azure que obtém dados do armazenamento de tabelas do Azure e é chamada a partir da aplicação
Os dados de utilização para uma única operação empresarial podem abranger todos os componentes da carga de trabalho. Estas informações devem ser correlacionadas para fornecer uma visão global da utilização dos recursos e do processamento da operação.
Recomendações para a análise dos dados
Correlacionar registos ao nível da aplicação e ao nível dos recursos. Avalie os dados em ambos os níveis para otimizar a deteção e a resolução de problemas.
Definir tempos de retenção claros no armazenamento para análise a frio. Recomendamos esta prática para permitir a análise histórica de um período específico. Pode também ajudá-lo a controlar os custos de armazenamento. Implementar processos que garantam que os dados são arquivados num armazenamento mais económico e agregar dados para análise de tendências a longo prazo.
Analisar tendências a longo prazo para prever problemas operacionais. Avaliar os dados a longo prazo para definir estratégias operacionais e também para prever quais os problemas operacionais suscetíveis de ocorrer e quando. Por exemplo, pode constatar que os tempos médios de resposta estão a aumentar lentamente ao longo do tempo e a aproximar-se do objetivo máximo.
Visualização
A visualização na monitorização do estado de funcionamento é fundamental para compreender o estado da carga de trabalho. A visualização pode ajudá-lo a identificar rapidamente problemas e tendências, além de o ajudar a compreender o efeito das alterações feitas à carga de trabalho.
Dashboards
A maneira mais comum de visualizar dados é usar dashboards que podem apresentar informações na forma de gráficos ou grafos. Estes 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 os seus dashboards com o seu modelo de estado de funcionamento para indicarem quando a carga de trabalho ou os componentes da carga de trabalho estão em bom estado de funcionamento, degradados ou mau estado de funcionamento.
Para um sistema de dashboard funcionar eficazmente, tem de ser significativo para a equipa de carga de trabalho. Visualize informações relacionadas com o estado de funcionamento da carga de trabalho e que também sejam acionáveis. Quando a carga de trabalho ou um componente está degradado ou não está em bom estado de funcionamento, os membros da equipa da carga de trabalho devem ser capazes de identificar facilmente a origem do problema na carga de trabalho e iniciar as suas ações corretivas ou investigações. Por outro lado, incluir informações que não são acionáveis ou que não estão relacionadas com a integridade da carga de trabalho pode tornar o dashboard desnecessariamente complexo e frustrante para os membros da equipa que estão a tentar discernir o ruído de fundo dos dados acionáveis.
Poderá ter dashboards para os intervenientes ou programadores que são personalizados para mostrar apenas os dados sobre a carga de trabalho que considerem relevantes. Certifique-se de que a equipa de carga de trabalho compreende os tipos de pontos de dados que as outras equipas estão interessadas em ver e pré-visualiza os dashboards antes de os partilhar para verificar a sua clareza. Fornecer dashboards sobre a sua carga de trabalho para os intervenientes é uma boa maneira de mantê-los informados sobre a integridade da carga de trabalho, mas corre o risco de ser contraproducente se os intervenientes não compreenderem claramente os dados.
Restringir o acesso ao dashboard a pessoal autorizado. As informações contidas nos dashboards podem ser confidenciais. Também deve proteger os dados subjacentes para evitar que os utilizadores os alterem.
A Denunciar
Os relatórios são utilizados para gerar uma visão global do sistema. Pode incorporar dados históricos e informações atuais. Os requisitos de comunicação dividem-se em duas grandes categorias: comunicação operacional e comunicação de segurança.
Os relatórios operacionais incluem normalmente:
- Estatísticas agregadas que podem ser utilizadas para compreender a utilização de recursos do sistema global ou de subsistemas especificados durante uma janela de tempo especificada.
- Identificação de tendências na utilização de recursos para o sistema global ou subsistemas especificados durante um período específico.
- Monitorização das exceções que ocorreram em todo o sistema ou em subsistemas específicos durante um determinado período.
- Determinar a eficiência da aplicação para os recursos implementados e compreender se o volume de recursos e os custos associados podem ser reduzidos sem afetar desnecessariamente o desempenho.
Os relatórios de segurança monitorizam a utilização do sistema pelos clientes. Podem incluir:
- Auditar operações dos utilizadores. Esta tarefa requer o registo dos pedidos individuais que cada utilizador completa, juntamente com as datas e horas. Os dados devem ser estruturados de forma a permitir que um administrador reconstrua rapidamente a sequência de operações que um utilizador completa durante um determinado período.
- Monitorizar os recursos por utilizador. Esta tarefa requer o registo de como cada pedido de um utilizador acede aos vários recursos no sistema e durante quanto tempo. Um administrador pode utilizar estes dados para gerar um relatório de utilização, por utilizador, para um período específico, possivelmente para faturação.
Alertas
Para ajudar a garantir que o sistema mantém o bom estado de funcionamento, reativo e seguro, defina alertas para que os operadores possam responder-lhes atempadamente. Um alerta pode conter informações contextuais suficientes para os ajudar a iniciar rapidamente as atividades de diagnóstico.
Recomendações para alertar
- Defina um processo de resposta a alertas que identifique os proprietários e as ações responsáveis.
- Configure os alertas para um âmbito bem definido e ajuste a verbosidade para minimizar o ruído.
- Utilize uma solução de alerta automatizada, como o Splunk ou o Azure Monitor, em vez de exigir que as pessoas procurem ativamente os problemas.
- Utilizar alertas para operacionalizar os processos de correção. Por exemplo, crie automaticamente pedidos de suporte para monitorizar os problemas e as resoluções.
Limiares
Os alertas são gerados quando os limiares são ultrapassados, tal como detetados pelo seu sistema de monitorização. Certifique-se de que os limiares definidos dão tempo suficiente para implementar as alterações necessárias à sua carga de trabalho para evitar a degradação ou falhas. Também deve implementar o tratamento de erros necessário e detetar erros conhecidos na sua carga de trabalho para reduzir o número de alertas. Por exemplo, configure políticas de repetição para as suas ações em fluxos de cloud para que uma nova tentativa seja tentada como parte da execução do fluxo, e apenas se repetições repetidas falharem e a falha de fluxo for registada e um alerta for enviado. Obtenha mais informações em Recomendações para conceber uma estratégia fiável de monitorização e alertas.
Facilitação do Power Platform
O Power Platform integra-se com o Application Insights, que faz parte do ecossistema do Azure Monitor. Utilize esta integração para:
Receber telemetria sobre os diagnósticos e o desempenho capturados pela plataforma do Dataverse no Application Insights. Pode subscrever para receber telemetria sobre as operações que as aplicações realizam na sua base de dados do Dataverse e dentro de aplicações condicionadas por modelo. Esta telemetria fornece informações que pode usar para diagnosticar e resolver problemas relacionados com erros e desempenho.
Ligar as suas aplicações de tela ao Application Insights. Pode utilizar estas análises para diagnosticar problemas e compreender o que os utilizadores fazem com as suas aplicações. Pode recolher informações para o ajudar a impulsionar melhores decisões de negócio e a melhorar a qualidade das suas aplicações.
Configurar a telemetria do Power Automate para fluir para o Application Insights. Por exemplo, pode monitorizar execuções de fluxo de cloud e criar alertas para falhas de execução de fluxo de cloud.
Capture dados de telemetria do seu agente do Microsoft Copilot Studio para utilização no Application Insights do Azure. Pode utilizar esta telemetria para monitorizar mensagens e eventos registados enviados de e para o seu agente, tópicos a acionar durante conversas de utilizador e eventos de telemetria personalizados que podem ser enviados a partir dos seus tópicos.
Os recursos do Power Platform registam atividades no portal de conformidade do Microsoft Purview. A maioria dos eventos está disponível nas 24 horas seguintes da atividade. Não utilize estas informações para monitorização em tempo real. Para obter mais informações sobre como registar atividades no Power Platform, consulte:
- Power Apps
- Power Automate
- Copilot Studio
- Power Pages
- Conectores do Power Platform
- Prevenção de Perda de Dados
- Registos administrativos do Power Platform
- Auditoria do Dataverse
A sua carga de trabalho do Power Platform pode incluir recursos do Azure. Obtenha mais informações em Recomendações para conceber e criar um sistema de monitorização.
O Power Platform Kit de Iniciação CoE é uma implementação de referência que contém uma coleção de componentes e ferramentas concebidas para o ajudar a começar a desenvolver uma estratégia para adotar e suportar o Power Platform. O Kit de Iniciação CoE inclui um conjunto rico de dashboards. Mais informações em Obter informações profundas sobre a sua adoção do Microsoft Power Platform com o dashboard Power BI do CoE.
O Kit de Automatização do Power Platform é um conjunto de ferramentas que acelera a utilização e o suporte do Power Automate para computadores para projetos de automatização. O kit fornece ferramentas que o ajudam a gerir projetos de automatização e a monitorizá-los para estimar o dinheiro poupado e o retorno do investimento (ROI). Parte do Kit de Automatização é o centro de controlo, que complementa a caraterística de execuções de fluxo de ambiente de trabalho do Monitor. O foco principal do centro de controlo é uma vista de orquestrador para que os analistas de suporte e as organizações monitorizem, tomem medidas e alertem quando necessário.
Informações relacionadas
- Recomendações para a conceção de uma estratégia fiável de monitorização e alerta
- Recomendações para a monitorização e deteção de ameaças