Tradicionalmente, o acrônimo APM tem sido usado para se referir ao termo gerenciamento de desempenho de aplicações. No entanto, nos últimos anos, também se refere, talvez de forma mais correta, ao monitoramento de desempenho de aplicações. Na Wikipédia, "APM se esforça para detectar e diagnosticar problemas complexos de desempenho de aplicações para manter um nível de serviço esperado."
Por definição, o APM ou Application Performance Monitoring permite que as organizações monitorem as métricas de desempenho de suas aplicações críticas de negócios, recebam alertas oportunos em caso de problemas e gerem relatórios para análises periódicas.
De acordo com a empresa de análise de software Gartner, uma ferramenta de APM deve atender a três dimensões funcionais principais:
Esse aspecto do APM se concentra na experiência do usuário final com base na disponibilidade e no desempenho de aplicações/serviços de negócios. Isso inclui monitoramento de usuários reais e de transações sintéticas, geralmente usando agentes digitais que interagem com aplicações de negócios para coletar informações transacionais e ajudar a identificar problemas de experiência digital.
Outra funcionalidade inevitável de qualquer software APM. Isso inclui a descoberta automatizada de servidores de aplicações, servidores da Web, microsserviços, bem como plataformas de aplicativos, como contêineres e malha de serviço, análise aprofundada de transações de aplicações usando instrumentação de código de byte e/ou rastreamento distribuído para identificar erros. A maioria das equipes de TI avalia os recursos desse segmento antes de tomar uma decisão de compra.
O Gartner define essa dimensão como envolvendo inteligência artificial centrada no domínio para funções de operações de TI usando AI e Machine Learning (ML). As ferramentas de APM devem empregar alertas de desempenho, correlação de eventos e análise de causa raiz. Além disso, inclui o rastreamento de anomalias de desempenho para transações HTTP/S suportadas por servidores de aplicações Java e .NET.
O Gartner encapsula um software APM com essas dimensões. No entanto, deve-se perceber que as necessidades de monitoramento de aplicações digitais variam enormemente entre as organizações e, portanto, os requisitos de APM são definidos de forma diferente em diferentes contextos. Enquanto algumas organizações se contentam com uma combinação de várias ferramentas para monitoramento, alerta e geração de relatórios, um software APM ideal apresenta um console unificado para todos os requisitos de monitoramento. Antes de fazer uma escolha de soluções APM, os profissionais de TI e DevOps na esfera APM devem analisar minuciosamente os recursos específicos fornecidos abaixo para obter os resultados corretos de desempenho do aplicações.
Quando dizemos KPIs, estamos falando sobre as métricas de desempenho da aplicação, como tempos de resposta, solicitações por minuto, detalhes de thread e sessão, utilização de CPU, utilização de disco e memória, estados de erro, etc. Isso inclui o primeiro conjunto essencial de aplicações e métricas de infraestrutura que você verifica para medir eficiência. Seu sistema APM deve ser capaz de apresentar esses dados com precisão em intervalos periódicos regulares.
A maioria das soluções de APM fornece visibilidade até o nível do código para ajudar a descobrir problemas que, de outra forma, poderiam passar despercebidos até que um usuário final os relate. Sua solução de APM deve ser capaz de obter rastreamentos de transações individuais de forma instantânea e permitir que você faça drill down das consultas SQL para detectar consultas de execução lenta. Com a ajuda do rastreamento de transações distribuídas, a solução APM deve ser capaz de rastrear chamadas feitas de um serviço para outro em várias plataformas e linguagens, especialmente se sua aplicação estiver sendo executada em um ambiente de microsserviços. Sua equipe de DevOps provavelmente deve ser capaz de dizer o quão valioso esse tipo de insight pode ser na fase de desenvolvimento.
Pense sobre essas questões por um momento.
Se o seu software de APM responder adequadamente a essas perguntas, você terá menos reclamações de clientes sobre a prestação de serviços. Com a ajuda de transações sintéticas que simulam o comportamento do usuário em sua página da Web/aplicação, você deve localizar quaisquer discrepâncias em seu desempenho (tempo de carregamento da página, erros 404, etc.) antes de implantar suas aplicações. Isso também garante que uma vez implantados, quando acessados de diferentes locais do globo, ofereça o mesmo desempenho consistente.
Seu software APM pode ser capaz de monitorar uma variedade de aplicações e estruturas, mas o mais importante é avaliar a ferramenta em termos de necessidades de negócios organizacionais individuais. Por exemplo, sua ferramenta APM pode ajudá-lo a monitorar seu servidor web e as estatísticas de desempenho do banco de dados subjacente; no entanto, ele executa o gerenciamento de desempenho interno de aplicações da Web personalizados? Uma ferramenta de APM ideal deve ser flexível e oferecer suporte a todos os pontos de contato monitoráveis necessários em uma configuração de TI.
Conforme mencionado anteriormente, as ferramentas de APM ideais devem incluir o essencial, ou seja, monitoramento completo, alertas e relatórios abrangentes, eliminando o incômodo de ter que lidar com várias ferramentas para medir e otimizar o desempenho da aplicação.
O ADDM se expande para mapeamento de descoberta e dependência de aplicações. Sua ferramenta de gerenciamento de APM não deve apenas descobrir automaticamente todas as aplicações e servidores em sua rede, mas também categorizá-los (DBs, VMs, servidores, etc.) e fornecer ao usuário a capacidade de visualizar as interdependências. Esse recurso em particular ajuda a economizar tempo que geralmente é desperdiçado tentando identificar um gargalo em uma horda de aplicações.
O alerta está entre um dos principais requisitos das ferramentas de monitoramento do APM. Os limites para esses alertas devem ser configuráveis para métricas individuais, bem como paraa aplicação como um todo. Esses alertas facilitam a identificação mais rápida de problemas de desempenho de aplicações. As equipes de TI devem receber esses alertas por meio de vários canais - e-mail, SMS, mensagens do Slack, incidentes em uma ferramenta ITSM como ServiceNow, etc. No entanto, esses alertas também devem poder executar ações pré-configuradas para uma solução de problemas mais rápida . Executar scripts corretivos ou arquivos em lote, reiniciar uma VM ou instância de contêiner, executar uma operação MBean, gerar dump de heap/thread dump/coleta de lixo, etc., podem ser alguns exemplos de ações automatizadas.
É incrivelmente exaustivo gerenciar todas as aplicações com o mesmo nível de atenção. Imagine ter várias centenas de servidores/aplicações adicionados à sua ferramenta de monitoramento; com um painel organizado que apresenta estatísticas como alertas críticos recentes, servidores ocupados, disponibilidade atual de servidores, etc. Você saberá claramente qual servidor precisa de sua atenção primeiro. Obviamente, as estatísticas mais significativas de um ponto de valor comercial podem variar entre as organizações, e é por isso que o painel deve oferecer a flexibilidade de personalização.
Os relatórios são um meio importante de analisar periodicamente e compartilhar insights sobre o desempenho de suas aplicações. Essa análise pode ajudar a identificar servidores subutilizados e superutilizados, entender tendências de desempenho de APM, prever tendências futuras com base em dados históricos e, assim, planejar a realocação de recursos e atualizações de infraestrutura. Sem a análise de aplicação correta, qualquer instância de APM fica incompleta, independentemente de aplicações pequenas, médias ou corporativas.
Um dos fatores mais importantes na escolha de ferramentas de APM, quase tão importante (ou mais?) quanto suas capacidades, é o preço pelo qual elas são oferecidas. Normalmente, com qualquer fornecedor, o preço para monitorar uma pequena rede de algumas centenas de servidores pode não parecer muito alto. No entanto, deve-se ter em mente os eventuais custos que se acumularão quando as organizações decidirem aumentar sua capacidade de infraestrutura. O preço do dimensionamento afetará seu orçamento e impedirá a transformação digital? Vale a pena ponderar.
Embora a maioria das ferramentas corporativas de APM abranja vários dos aspectos discutidos nesta página, a solução que melhor se adapta às suas necessidades organizacionais é aquela que você mesmo avaliou em seu ambiente de monitoramento personalizado. Dito isto, o ManageEngine Applications Manager é uma boa solução de APM com todos os recursos de monitoramento (monitoramento, alertas, relatórios, painéis, etc.) a um preço incrivelmente acessível.