Em busca de conteúdos sobre boas práticas de monitoria de Microserviços
Fala pessoal, tudo bem? Eu estou em busca de conteúdos e fontes sobre boas práticas em monitorias em microserviços.
Atualmente utilizo algumas ferramentes como o New Relic ou Splunk porém acredito que monitorias de serviços vai muito além de adicionar uma linha de log ou adicionar conteúdo a uma transação no New Relic.
Minhas dúvidas vão desde o básico sobre "o que monitorar?" até sobre "quais dashboards ou alarmes devo implementar no meu serviço".
Para quem ainda é novo no assunto, aqui vai uma breve explicação: conforme você avança e amplia os seus conhecimentos no desenvolvimento de sistemas, você precisa começar a se preocupar com a saúde de sua operação. Nos dias atuais onde boa parte das empresas estão adotando a arquitetura de microserviços, essa prática se torna essencial pois imagina um ecosistema de vários serviços onde o Serviço A chama o B e o B chama o C e o C devolve informações em um sistema de mensageria que é lido pelo D e assim por diante. Como manter o controle das exceções ou falhar que ocorrem entre esses sistema? Resposta: Utilizando soluções de monitorias.
Existem várias no mercado e a intenção aqui não é falar sobre um produto em específico mas sim do conceito geral.
Dado o cenário acima, você precisa começar a logar por onde o seu serviço passou, qual regra de negócio foi executada dado um parâmetro ou mesmo qual exceção foi lançada. Tudo isso vai fazendo com que seja possível rastrear todas as chamadas e tudo que foi executado em determinado serviço.
Existem estratégias onde podemos definir um traceId
, que será transitado entre todos os serviços e se você utilizar uma ferramenta de compilação de logs, você consegue buscar todos os lugares onde esse traceId
transitou e assim entender quais serviços e métodos foram executados por determinda execução.
Dada essa introdução, gostaria de saber se vocês conhecem materiais sobre boas práticas em monitorias, o que monitorar, como definir métricas, APDEX, etc.