Observabilidade do modo de falha - Recomendações da AWS

Observabilidade do modo de falha

Para mitigar um modo de falha, você primeiro precisa detectar se ele está afetando atualmente, ou está prestes a afetar, sua workload. Uma mitigação só é eficaz quando há um sinal de que uma medida deve ser tomada. Isso significa que parte da criação de qualquer mitigação inclui, no mínimo, verificar se você tem ou se está criando a observabilidade necessária para detectar o impacto da falha.

Você deve considerar os sintomas observáveis do modo de falha em duas dimensões:

  • Quais são os indicadores preditivos que informam que o sistema está se aproximando de uma condição em que um impacto poderá ser visto em breve?

  • Quais são os indicadores de resultado que podem mostrar o impacto do modo de falha o mais rápido possível após sua ocorrência?

Por exemplo, uma falha de carga excessiva aplicada a um elemento do banco de dados pode ter uma contagem de conexões como indicador preditivo. Você pode ver o aumento constante nas contagens de conexões como um indicador preditivo de que o banco de dados poderá em breve exceder o limite de conexões, para que você possa tomar medidas, como encerrar as conexões usadas menos recentemente, para reduzir a contagem de conexões. O indicador de resultado indica quando o limite da conexão do banco de dados foi excedido e os erros de conexão do banco de dados aumentaram. Além de coletar métricas de aplicações e infraestrutura, considere coletar indicadores-chave de performance (KPI) para detectar quando as falhas afetarem a experiência do cliente.

Quando possível, recomendamos que você inclua os dois tipos de indicadores em sua estratégia de observabilidade. Em alguns casos, você talvez não consiga criar indicadores preditivos, mas deve sempre planejar ter um indicador de resultado para cada falha que deseja mitigar. Para escolher a mitigação correta, você também deve considerar se um indicador preditivo ou de resultado detectou a falha. Por exemplo, considere um aumento repentino no tráfego do seu site. Você provavelmente veria apenas um indicador de resultado. Nesse caso, a escalabilidade automática por si só pode não ser a melhor mitigação, pois leva tempo para implantar novos recursos, enquanto o controle de utilização pode evitar a sobrecarga quase imediatamente e dar tempo à aplicação para escalar ou reduzir a carga. Por outro lado, para um aumento gradual no tráfego, você veria um indicador preditivo. Nesse caso, o controle de utilização não seria apropriado porque você tem tempo para responder escalando automaticamente seu sistema.