LoadView da Dotcom-Monitor e Dynatrace são plataformas focadas em engenharia de desempenho. Ambas possuem uma excelente base de clientes, são soluções totalmente nativas em Cloud e têm uma longa história consolidada. Esta apresentação demonstra como a combinação dessas duas ferramentas fechará as lacunas restantes na cadeia de engenharia de desempenho.

Meus principais passos nesta apresentação foram:

  • Registro
    • Conta de teste para Dynatrace SaaS
    • Conta de teste para dotcom-monitor LoadView SaaS
  • Instalação
    • Aplicativo demo EasyTravel em servidor AWS
    • Ferramenta de script LoadView Easystep em servidor AWS
  • Configuração
    • Firewall no servidor AWS
    • Política de segurança do servidor AWS
    • Atributo de requisição Dynatrace
  • Configuração do Teste de Carga
    • Script de teste EasyTravel gravado
    • Configuração do cenário de teste de carga e execução do teste
  • Análise de Resultados
    • Revisão dos tempos de resposta end-to-end no LoadView
    • Análise aprofundada dos resultados correlacionados no Dynatrace

Sobre esta Integração

LoadView é uma plataforma SaaS para testes de carga totalmente equipada com técnicas de simulação de usuários baseadas em protocolo, headless ou navegador completo. Ela oferece suporte para testes em mais de 40 dispositivos, como IE, Chrome, Firefox e principais dispositivos móveis como iPhone, Samsung, Nokia, Blackberry e muitos outros.

Dynatrace é uma solução de monitoramento SaaS que suporta uma ampla gama de tecnologias. Seu poderoso OneAgent injeta automaticamente todos os serviços, captura o fluxo de serviços e todas as interações do usuário final, rede e middleware até as camadas backend, fornecendo insights sobre os gargalos reais.

A figura abaixo destaca os principais passos de integração entre as duas soluções.

dynatrace-and-loadview

Softwares usados na apresentação:

  • Dynatrace SaaS – Plataforma de Monitoramento da Dynatrace
  • Dynatrace OneAgent – Agente de Monitoramento da Dynatrace
  • EasyTravel – Aplicativo demo da Dynatrace
  • LoadView – Plataforma de Teste de Carga da dotcom monitor
  • EveryStep – Ferramenta de script da dotcom monitor

EasyTravel

  1. EasyTravel instalado na máquina AWS
  2. Configuração do EasyTravel
  3. Iniciar o aplicativo demo EasyTravel
  4. Adicionar regra de firewall do Windows de entrada e saída no servidor de teste para a porta 8079

Adicione regra de saída para os IPs abaixo na máquina AWS para permitir comunicação com o backend SaaS da Dynatrace:

  • 34.251.255.57
  • 34.250.133.68
  • 54.77.84.155

Configuração EasyTravel

Link para meu aplicativo demo EasyTravel hospedado no servidor AWS:

  • https://35.166.197.76:8079/

Conectar o aplicativo demo hospedado na AWS à Dynatrace

Usei esta documentação para a configuração:

  • https://help.dynatrace.com/infrastructure-monitoring/amazon-web-services/how-do-i-start-amazon-web-services-monitoring/

Criar acesso baseado em chave para a conta amazon:

  • Usuário: dynatrace
  • AKID: …
  • Chave de acesso secreta: …
  • Política personalizada: watch
  • Conectar conta amazon à Dynatrace

Configuração Dynatrace

  1. Configurar o nome do atributo de requisição loadtest
  2. Ir para Configurações / Monitoramento do serviço do lado do servidor
  3. Criar um novo atributo de requisição chamado loadtest
  4. Clicar em Adicionar nova origem de dados
  5. Definir o nome do Parâmetro para x-dynatrace
  6. Clicar em Salvar

Atenção: use caracteres minúsculos tanto no nome do atributo quanto do parâmetro

Documentação detalhada:
https://www.dynatrace.com/blog/request-attributes-simplify-request-searches-filtering/

Configuração DynaTrace

LoadView – Criar Script de Teste de Carga

Usado: Ferramenta de Script EveryStep

  • Gravar um script baseado em navegador, que navega pelo aplicativo demo EasyTravel
  • Reproduzir o script baseado em navegador
  • Editar o script de teste de carga e adicionar a seguinte seção de código após a inicialização da variável tab0: Tab.SetRequestHeader(“loadtest”,”x-dynatrace”);

Script de Teste de Carga

  • Executar o EveryEtapa Script carregar script de teste de carga várias vezes (usuário único)
  • Carregar o script de teste de carga na Plataforma LoadView

Create load test scenario

Observe como o aumento de usuários e os tempos de resposta fim a fim se comportam durante a execução

execution plan

Dynatrace – Análise aprofundada

Aplique o filtro loadtest e obtenha as requisições relevantes

Requests

Abra o fluxo de serviço e entenda o padrão de comunicação

service flow

Obtenha uma lista de requisições de longa duração

long running requests

Detalhes de uma requisição de longa duração, encontre o ponto problemático

problem spots

Visão geral, comece a análise de desempenho a partir daqui

performance analysis

Ações do Usuário

user actions

Benefícios

Testes de Carga e Monitoramento de Desempenho são duas estrelas em ascensão. As organizações não podem mais ignorar aplicativos pouco confiáveis porque os clientes estão no controle e frequentemente gastam seu dinheiro rapidamente em outros sites, mais confiáveis. Devido a este impacto financeiro negativo do aumento das taxas de abandono e à crescente necessidade de ciclos rápidos de implantação, as empresas procuram uma solução para esse dilema de desempenho.

A geração de carga nas fases iniciais de desenvolvimento oferece confiança sobre como os tempos de resposta fim a fim se desenvolvem sob condições de múltiplos usuários. Testadores costumam usar injeção de carga para verificar requisitos não funcionais nas fases de pré-produção.

O Monitoramento de Desempenho fornece insights sobre como as camadas do aplicativo lidam com suas requisições de serviço. Desenvolvedores e equipe operacional frequentemente o utilizam para encontrar pontos problemáticos em suas aplicações.Existem benefícios significativos se você combinar LoadView & Dynatrace:

  1. Identificar problemas de desempenho cedo no ciclo de vida
  2. Encontrar a causa raiz dos problemas de desempenho
  3. Reduzir o esforço de reexecução
  4. Verificar como os serviços se comportam sob condições reais de carga de produção
  5. Entender o padrão de comunicação
  6. Verificar o dimensionamento do hardware
  7. Tornar a otimização de aplicações muito mais fácil
  8. Reduzir custos e pagar apenas pelos serviços utilizados
  9. Não é necessária infraestrutura interna para atividades de engenharia de desempenho

Empresas bem-sucedidas integraram a engenharia de desempenho em seu ciclo de desenvolvimento. Elas simulam padrões reais e futuros de crescimento nas etapas de pré-produção, identificam e corrigem pontos críticos e implantam essas aplicações otimizadas em produção. Mesmo em produção, o trabalho por tentativa e erro é eliminado. Elas monitoram permanentemente a experiência do usuário, capturam todas as transações e detectam problemas automaticamente com base em dados reais e históricos. LoadView & Dynatrace são grandes passos rumo a serviços de TI enxutos e confiáveis.