Iniziamo. È gratuito!
o registrati con il tuo indirizzo email
Observabilidade da Mind Map: Observabilidade

1. Principais Ferramentas de Observabilidade

1.1. Gerenciamento e centralização de logs

1.1.1. Elastic Stack

1.1.1.1. O Elastic Stack não é uma ferramenta isolada, mas um conjunto de três delas para otimizar a gestão de logs e também dar forma para os dados recolhidos. Tudo utilizando ferramentas automatizadas de fácil configuração e uso.

1.1.1.1.1. https://www.elastic.co/pt/observability

1.1.2. Splunk

1.1.2.1. Mais direcionado para ações de observabilidade em desempenho e segurança. Trazendo um ambiente de desenvolvimento integrado muito robusto e eficiente.

1.1.2.1.1. https://www.splunk.com/en_us/products/observability.html

1.1.3. Graylog

1.1.3.1. Uma das ferramentas mais simples e eficientes do ramo, o Graylog permite uma fácil gestão de logs com detecções automáticas de problemas e riscos.

1.1.3.1.1. https://www.graylog.org/products/operations/

1.1.4. Falcon LogScale

1.1.4.1. O Falcon LogScale foi desenvolvido especificamente para ajudar qualquer organização a obter os benefícios do registro e análise em larga escala. O Falcon LogScale praticamente não tem latência, mesmo com volumes de ingestão de 1 PB por dia

1.1.4.1.1. https://www.crowdstrike.com/products/observability/falcon-logscale/

1.2. Melhores ferramentas de monitoramento de código aberto

1.2.1. Grafana

1.2.2. Zabbix

1.2.3. Nagios

1.2.4. Prometheus

1.2.5. Riemann

1.2.6. Sensu

1.2.7. Icinga

1.2.8. Cactos

1.2.9. LibreNMS

1.2.10. Observium

1.2.11. Pandora FMS

1.2.12. LogRhythm NetMon Freemium

1.2.13. Scanner IP Avançado da Famatech

1.3. Lista de indicadores-chave para o melhor software de monitoramento.

1.3.1. Fornece indicadores sobre interrupções e degradação do serviço

1.3.2. Detecta interrupções de serviço e atividades não autorizadas

1.3.3. Escalável

1.3.4. Capaz de lidar e processar grandes quantidades de dados de monitoramento

1.3.5. Coleta métricas predefinidas de sistema/aplicativo em tempo real

1.3.6. Capaz de fornecer insights de longo prazo para um melhor planejamento de capacidade.

1.3.7. Altamente disponível

1.3.8. Dê suporte a todos os aplicativos modernos em nuvem, em contêineres e nativos da nuvem.

1.3.9. Suporta ferramentas de visualização de métricas

1.3.10. Boa rastreabilidade

1.3.11. Tenha uma boa interface amigável.

2. Termo APM (Monitoramento de Desempenho de Aplicativos)

2.1. Definição

2.1.1. O monitoramento de desempenho de aplicativos (APM) ajuda as empresas a rastrear o desempenho de aplicativos de software para identificar e detalhar os problemas que ocorrem durante o desenvolvimento e o tempo de execução

2.2. O que o APM monitora?

2.2.1. O APM não mede diretamente a integridade da rede, mas sim a integridade de um aplicativo em execução nessa rede. Basicamente, o APM monitora a velocidade transacional de um aplicativo da Web, incluindo a velocidade com que diferentes serviços executam sua parte da transação e outras métricas relacionadas ao desempenho do aplicativo.

2.3. As ferramentas de APM são projetadas para responder a várias perguntas importantes, incluindo:

2.3.1. O aplicativo está se comportando e respondendo como deveria?

2.3.2. Os gargalos de desempenho ou outros erros estão afetando o aplicativo?

2.3.2.1. Em caso afirmativo, qual é a origem desse gargalo ou erro? É o próprio aplicativo? São as interdependências entre os diferentes serviços que constituem a aplicação? Um problema com a infraestrutura?

2.3.2.2. Qual é o impacto desse gargalo nos usuários finais e nos negócios?

2.3.2.3. Podemos corrigir esse gargalo?

2.4. Quais são as principais métricas para APM?

2.4.1. As ferramentas APM geralmente medem três tipos de métricas, conhecidas como métricas TED:

2.4.1.1. Taxa: a taxa na qual uma transação é executada

2.4.1.2. Erro: se produz algum erro

2.4.1.3. Duração: o tempo que leva para executar a transação

2.5. Informações gráficas de um APM

2.5.1. Exemplo

2.6. Como você escolhe a solução de APM certa?

2.6.1. Existem muitas soluções de APM, cada uma com vantagens e desvantagens. Para ajudá-lo a escolher a solução de APM certa para sua organização, seguem algumas considerações importantes, tendo em mente que o orçamento também será um fator.

2.6.1.1. Perguntas específicas da organização para responder:

2.6.1.1.1. Seus aplicativos são um único bloco de código em execução em uma única máquina virtual (VM) ou você está usando um design moderno baseado em microsserviços?

2.6.1.1.2. Sua organização está usando metodologias modernas de desenvolvimento de software e adotando uma cultura DevOps?

2.6.1.1.3. Você quer encontrar alguma anomalia e proporcionar uma ótima experiência a uma grande variedade de usuários, ou se contenta em atender bem apenas uma parte de seus clientes?

2.6.1.1.4. Quão “tempo real” você precisa que seus insights sejam? Você precisa receber alertas segundos após a ocorrência de um problema ou pode receber alertas depois de apenas cinco minutos?

3. Conceitos iniciais

3.1. Pode-se pensar em OBSERVABILIDADE como um superconjunto de monitoramento.

3.2. A observabilidade é um novo conceito que vem sendo aplicado por equipes de desenvolvimento, infraestrutura e DevOps para observar o comportamento das aplicações e arquiteturas em nuvem.

4. Diferença

4.1. MONITORAMENTO

4.1.1. CPU

4.1.2. RAM

4.1.3. HD

4.1.4. Outros

4.2. OBSERVABILIDADE

4.2.1. Além de identificar problemas real-time, ela exibe dados que mostram o fluxo completo da aplicação, o que possibilita prevenção a cerca de falhas no futuro.

4.2.2. O objetivo da observabilidade é fornecer uma visão abrangente da infraestrutura, mais do que o monitoramento individual do sistema pode fornecer. Ajuda a determinar a causa raiz de um problema com muito mais certeza, especialmente em um sistema distribuído e complexo.

4.2.3. Eles também contam com os mesmos dados. Quer você esteja procurando criar um sistema observável ou monitorado, primeiro você precisa capturar as saídas certas. Isso requer a instalação de coletores e agentes e, possivelmente, a instrumentação do código do aplicativo.

4.3. Diferença Simples

4.3.1. Por exemplo, o monitoramento pode avisar suas equipes SRE sobre um servidor que não responde. Ele pode fornecer dados sobre a memória do sistema, desempenho da rede e métricas da CPU, mas não o que causou esses picos. Uma plataforma de observabilidade, no entanto, vai um passo além. Ele examina logs, rastreamentos, eventos e métricas do servidor e, em seguida, correlaciona os dados, talvez determinando que um processo descontrolado esteja levando a um aumento no uso da CPU. A plataforma de observabilidade relata esse processo.

4.4. Resumo

4.4.1. O monitoramento informa que algo está errado. A observabilidade usa a coleta de dados para dizer o que está errado e por que aconteceu.

4.4.1.1. Simplificando, o monitoramento informa que um sistema falhou e a Observabilidade ajuda a descobrir por que esse sistema falhou.

5. Porque foi possível a OBSERVABILIDADE?

5.1. Tudo começou com os MICROSSERVIÇOS

5.1.1. O que são microsserviços?

5.1.1.1. Microsserviços são uma abordagem arquitetônica e organizacional do desenvolvimento de software na qual o software consiste em pequenos serviços independentes que se comunicam usando APIs bem definidas.

5.1.2. Vantagens

5.1.2.1. Diferentes componentes do sistema podem ser criados e implementados individualmente em diferentes plataformas.

5.1.3. Desvantagens

5.1.3.1. A medida que os serviços aumentam, sua complexidade se tornam aparente e a depuração e o diagnóstico das várias partes interconectadas se tornam mais difíceis.

6. Observabilidade pode ser dividia em 3 pilares, utilizando os tipos de dados de telemetria:

6.1. Log de eventos

6.1.1. Captar qualquer tipo de emissão de dados

6.1.2. Funciona como um diário do sistema

6.1.3. Data e hora precisa, que determinado evento ocorreu

6.1.3.1. Com isso é possível construir uma timeline muito específica do que está acontecendo dentro do software.

6.2. Métricas

6.2.1. Indicam a saúde do sistema

6.2.1.1. Quantidade de memória - é usado por um método ou quantas solicitações um serviço trata por segundo

6.2.1.2. Carga da CPU

6.2.1.3. Latência gerada dentro de uma transação de banco

6.2.2. As métricas são um agrupamento de registros de log que mantém dados por mais tempo.

6.3. Rastreamento

6.3.1. Um rastreamento descreve toda a jornada de uma solicitação conforme ela se move de um nó para outro em um sistema distribuído.

6.3.1.1. interações que o usuário realizou dentro de um aplicativo móvel

6.3.1.2. plataforma de e-commerce

6.3.1.3. por exemplo, passa pela arquitetura inteira da aplicação, até devolverem um resultado ao desenvolvedor responsável pela análise

6.3.1.4. monitorar o fluxo através dos módulos para encontrar gargalos de desempenho.

7. Ajuda a encontrar respostas para perguntas como:

7.1. Por quais serviços uma solicitação passou e quais foram gargalos de desempenho?

7.2. Por que a solicitação falhou?

7.3. Como cada microsserviço processou a solicitação?

8. Relevante

8.1. A capacidade de observação também ajudará sua equipe a dominar o sistema e entender melhor como ele se comporta em um ambiente vivo

9. Alguns benefícios

9.1. Melhora na visibilidade e um monitoramento mais seguro e eficaz.

9.2. Mapear os pontos críticos do negócio.

9.3. Reduzir tempo e esforço em reparos sistêmicos.

9.4. Aumentar a pró-atividade e reduzir o tempo de detecção dos problemas.

9.5. Prever problemas a partir de dados anteriores e projeções futuras.

9.6. Otimizar o uso dos softwares e programas internos.

9.7. Oferecer mais segurança às operações.

9.8. Imagem

10. Como aproveitar ao máximo a Observabilidade?

10.1. Buscar parcerias estratégicas

10.1.1. apoio de empresas especializadas neste tipo de procedimento

10.2. Todo o projeto deve ser estruturado para que não surjam gaps que interfiram no resultado final.

11. Empresas que prestam serviço em OBSERVABILIDADE

11.1. icarotech

11.2. opservices

11.3. appdynamics