Tempo limite dos relatórios de aplicativo. No entanto nginx não tem registro ou log

2

Estamos servindo o Django via nginx / uwsgi. Usamos o AWS ELB por trás de um VPC.

Este é um serviço Web para clientes móveis.

Tivemos relatos de tempos limite durante o desenvolvimento, por isso adicionamos um conceito de request_id a cada solicitação

  1. cliente gera id de solicitação
  2. envia GET / request? _request_id = ABDFEFE
  3. se ocorrer um erro, o erro será relatado ao servidor junto com o ID da solicitação

O problema que estou tendo agora é que estou recebendo relatórios de erros de Tempos ocorreu em estado selvagem. No entanto, os request_ids associados não aparecem em nenhum registro nginx ou uwsgi.

Eu sou um pouco desconfiado do balanceador de carga elástica amazon. No entanto, não tenho certeza. Como é um tempo limite, não temos cabeçalhos de ELB para examinar, ou código de status ou corpo de resposta ou qualquer coisa.

Usamos o newrelic para monitorar nosso back-end. Ocasionalmente, registra uma 'transação lenta' de 3-4 segundos. (Nada como os tempos limite de 30 segundos que são típicos com a maioria dos clientes)

A pergunta atual: onde procurar a seguir? Segundo eu e os dados que tenho no servidor NADA é realmente errado, no entanto, os tempos limite persistem. Neste ponto, eu nem sei como começar a depurar isso. Os servidores de aplicativos estão sendo executados com uma capacidade de 10% (wrt para mem e cpu) Consultas SQL lentas estão sendo registradas (com nada interessante também)

(Também estou analisando o erro do lado do cliente separadamente)

Obrigado antecipadamente.

    
por semarjt 02.10.2012 / 18:11

1 resposta

0

Considerando que os clientes são dispositivos móveis, é possível que o problema não seja você ou o ELB.

Os ELBs da AWS não soltam apenas o tráfego no chão; ou pelo menos não sem deixar você saber. Se o problema estiver no ELB, você verá isso refletido nas métricas do ELB; ELB_5XX ou Spillover seriam as métricas que verificaria primeiro em um caso como este. É improvável, já que seu monitoramento está indicando que o serviço está on-line.

    
por 10.09.2015 / 03:59