General degradation
Incident Report for BLiP
Postmortem

Post-mortem - "Crise 25-05-2020"

Período avaliado

  • 2020 05-25 08:18h Início (GMT-03)
  • 2020 05-25 20:40h Fim (GMT-03)

Status

Crise finalizada

Sumário

Foi constatada a degradação de performance no ambiente por meio das ferramentas de monitoramento. Concomitantemente ao sintoma, recebeu-se os primeiros acionamentos vindos de clientes, reportando a degradação no ambiente.

A equipe técnica foi mobilizada de imediato e iniciado o protocolo de crise, tendo em vista escopo, urgência e impacto do evento. Paralelamente à realização do troubleshooting pela equipe interna e também dos fornecedores alocados, providenciou-se a comunicação dos eventos na página de status do produto.

Em primeira análise foi identificado uma degradação na comunicação dos serviços que realizam o roteamento de mensagens.

O problema, de difícil diagnóstico, começou a escalar horizontalmente e verticalmente ainda na parte da manhã, envolvendo os times de SRE, plataforma, SI, além de contar também com o envolvimento de especialistas do nosso provedor de nuvem que estava impactado, a Microsoft.

O incidente foi escalado dentro da Microsoft e em paralelo continuou-se com as análises e tratativas internas.

Durante as ações internas para tratativa do incidente, embora sem sucesso permanente, foram identificados erros de Failover no banco de dados não relacional do provedor de nuvem, utilizado pelo BLiP. Com o assunto já escalado para as maiores instâncias do nosso provedor, recebemos a comunicação da Microsoft que havia ocorrido uma atualização de emergência no nível do SO e que teve impacto confirmado. Tratou-se de um patch de segurança que afetou o comportamento em um dos nossos banco de dados não relacionais. A partir de então foi descartada hipótese de um problema gerado pela Plataforma.

Diante disto, foi realizado rollback das ações internas realizadas durante o dia para que o ambiente voltasse ao estado inicial. Como medida de continuidade de negócio, passou-se a atuar no chaveamento do tráfego para outro serviço de banco não relacional. Isso gerou alguns comportamentos não performáticos específicos para certos casos e fez com que a percepção de normalização tenha levado mais algum tempo para esses clientes específicos, chegando na hora de término registrada.

Impacto durante a crise

  • Falha no acesso no Desk e Portal
  • Alto tempo de resposta e timeouts no processamento de mensagens .
  • Lentidão em alguns serviços da plataforma em vários horários ao longo da janela mencionada como duração da crise.

Impacto pós crise

  • Expiração de sessão:

Contexto:

Atualmente existem opções de configuração no bot que permitem que a sessão do usuário com o bot expire e o mesmo volte ao início do fluxo. Quando o usuário encontra-se no Desk e ocorre esta expiração, temos mensagem de “Falha ao enviar mensagem”, uma vez que apesar do ticket estar aberto, o usuário não se encontra mais no bloco de atendimento.

O que causou o cenário reportado:

Com o cenário ocorrido ontem (25/05/2020), onde tivemos degradação da Plataforma afetando o atendimento no Desk, ocorreram casos de expiração da sessão do usuário com o bot. Ela segue a regra de expiração configurada no próprio bot, deixando de ser possível interagir com o usuário no Desk.

Justificativa:

Dado que tivemos uma degradação no ambiente em um período maior, sentimos em informar que o cenário mencionado trata-se de um reflexo do incidente, uma vez que usuários que encontram-se com tickets abertos de fato não receberão as mensagens enviadas no Desk pelo atendentes. Diante disso, orientamos que os tickets que estejam com esse comportamento sejam finalizados para que, quando o usuário interagir novamente com Bot, o fluxo siga normalmente.

Lamentamos muito os transtornos provocados pela experiência ruim e nos colocamos à disposição para tirar todas as dúvidas que julguem necessárias.

  • Mensagens com menos de 24 horas sendo setadas como mensagens ativas

Contexto:

Visando dar uma boa experiência aos usuários, alguns canais de mensageria, como Facebook Messenger e WhatsApp, impõem regras no envio de mensagens. Em resumo, essas políticas dizem que empresas e desenvolvedores, que usam esses canais para construção de bots, têm até 24 horas para responder a uma mensagem enviada por um usuário. O limite de 24 horas será reiniciado sempre que um usuário enviar uma mensagem ao bot.

O que causou o cenário reportado:

Com o cenário ocorrido ontem (25/05/2020), onde tivemos degradação da Plataforma, uma das ações realizadas como tentativa de sanar o problema foi realizar a limpeza da sessão do usuário. Infelizmente isso causou o cenário de mensagens com o erro “Unauthorized active message. Messages outside the response window are not allowed for the current sender”.

Orientações:

Sentimos em informar que o cenário mencionado trata-se de uma consequência das manobras de contenção da falha, uma vez que usuários que encontram-se com tickets abertos não receberam as mensagens enviadas no Desk pelo atendentes. Diante disso, orientamos que os tickets que estejam com esse comportamento sejam finalizados para que, quando o usuário interagir novamente com Bot, o fluxo siga normalmente.

Causa raíz

Ticket interno #70100 para acompanhamento das ações internas.

Ticket na Microsoft 120052524001937 análise de causa raiz.

Detecção

  • Alarmes Dynatrace
  • Alertas de logs no Seq.
  • Alarmes no Nagios.
  • Testes manuais.
  • Chamados dos clientes.

Ações

Estão sendo mapeadas ações para evitar que este cenário volte a ocorrer Ticket interno #70100.

Ações futuras previstas

  • Alinhamento junto ao provedor de nuvem sobre aplicação de patchs de segurança
  • Revisão do monitoramento em nossa ferramenta de monitoramento
  • Melhoria no fluxo de troubleshooting da Take;
  • Avaliação de arquitetura do banco de dados para melhorar a resiliência do ambiente à cenários similares
Posted May 28, 2020 - 16:00 GMT-03:00

Resolved
Em análise inicial na parte da manhã foi levantada a suspeita de falha no roteamento das mensagens. Foram realizadas diversas ações para tentar mitigar o problema sem sucesso:

1 - Desativação do cache de roteamento de mensagens do BLiP;
2 - Rollback da atualização de um determinado componente que havia entrado em produção no dia 19/05.;
3 - Limpeza das chaves do banco de dados não relacional do BLiP;
4 - Criação de um novo banco de dados não relacional no mesmo provedor de Nuvem;

Esta hipótese foi descartada por volta das 15h após terem sido identificados alguns erros de Failover, na provedor de nuvem no banco de dados não relacional utilizado pelo BLiP.
Diante disto foi realizado rollback das ações realizadas durante o dia para que o ambiente voltasse ao estado inicial de hoje de manhã, com exceção no novo banco de dados criado, que foi mantido em produção. O ambiente estabilizou por volta 16h40min, porém tivemos novo cenário de instabilidade às 17:15h.

Após identificado este problema no outro banco não relacional de contingência, abrimos chamado com severidade máxima junto ao provedor, o qual nos foi informado sobre uma aplicação de patch de segurança o qual gerou impacto diretamente em nossa aplicação. Após confirmado este efeito colateral iniciamos a execução do plano de continuidade de negócio, chaveando o tráfego para outro serviço de banco não relacional. Toda atuação do desde então da equipe técnica foi na parte de chaveamento do tráfego. Finalizando às 20h40min.
Posted May 25, 2020 - 21:49 GMT-03:00
Monitoring
Correction actions completed at 08:40 PM
We continue monitoring
Posted May 25, 2020 - 21:00 GMT-03:00
Update
The action remains in progress, we have already reached 70% of the corrections applied. These are missing 30% with an estimated time of around 01 hour to be completed.
Posted May 25, 2020 - 20:09 GMT-03:00
Update
Failover errors were identified in the non-relational database allocated on the cloud server used by BLiP.
We registered a call with our provider for analysis and we were informed that an update to a security patch occurred, impacting BLiP.
After this return, we started executing a contingency plan, changing traffic to another non-relational database service.
This action is in progress.

Expected to finish: 07:40 PM
Posted May 25, 2020 - 19:27 GMT-03:00
Identified
We identified that the problem reoccurred. We continue the analysis and actions and will update the status as soon as we have news.
Posted May 25, 2020 - 17:28 GMT-03:00
Monitoring
After completion of the rollback and new configuration applied, the environment is normalized. We are monitoring the environment.
Posted May 25, 2020 - 16:17 GMT-03:00
Update
We've made some interventions that have improved the situation (but didn't solve all issues yet). Since many changes were made to the environment at the same time throughout the day, we are now trying to isolate those that fixed problems and undo those that had no impact.
Posted May 25, 2020 - 15:27 GMT-03:00
Update
Although it has been identified what is causing the failure, all the corrective actions applied to date have not been sufficient to restore the environment 100%. We continue to work on the case.
Posted May 25, 2020 - 13:55 GMT-03:00
Update
We are taking action to address the case.
Posted May 25, 2020 - 12:44 GMT-03:00
Identified
The team is working on the case, some interventions in the environment have already been carried out, however, they did not have the expected effect.
Posted May 25, 2020 - 11:50 GMT-03:00
Update
The team is working on the case, some interventions in the environment have already been carried out, however, they did not have the expected effect.
Posted May 25, 2020 - 11:43 GMT-03:00
Update
Every technical team remains focused on identifying what is causing the failure.
Posted May 25, 2020 - 09:35 GMT-03:00
Investigating
Dear, we are having a degradation in our BLiP platform. It is already under investigation.
Posted May 25, 2020 - 08:18 GMT-03:00
This incident affected: Hosting Business (Bot Builder, Bot Router), Hosting Enterprise (Bot Builder, Bot Router), BLiP Platform (CRM, Core, Analytics, Artificial Intelligence, Portal, Cloud Infrastructure), Channels (WhatsApp, Telegram, Messenger, BlipChat, Workplace Chat, BusinessChat, Skype, E-mail), and Desk, Hosting Standard.