Domanda

In alcuni scenari, quando si verifica un errore nel codice (di solito una variabile erroneamente in un parziale, ma potrebbe anche essere qualcos'altro), ricevo 504 timeout da NGINX Invece della traccia dello stack prevista (Su sviluppo ambiente).

Sembra anche che le specifiche si fermino sugli stessi errori (invece di segnalare istantaneamente "fallito").

Qualsiasi idea su ciò che dovrei esaminare o ciò che potrebbe essere sbagliato nella mia configurazione sarebbe utile.

Sto usando Ruby on Rails 3.1.

È stato utile?

Soluzione

Stai usando qualche tipo di notifica di eccezione o eccezione? Potrebbe essere nel tuo codice, in una libreria a cui fai riferimento o in una gemma a cui fai riferimento.

Se lo sei, disabilitalo (commentalo, ecc.) E vedi cosa ottieni.

Se stai correndo production, passa a development se potete.


Molte persone aggrottano le sopracciglia su questo metodo di risoluzione dei problemi, ma una delle altre cose che a volte faccio è pepe il mio codice con righe che aggiungono un file di stato (nel formato <DATE> <TIME> - <MESSAGE>. Vedendo ciò che è scritto nel file dopo ogni richiesta, posso trovare dove si trova il problema.

Potresti fare qualcosa questo:

def debug(filename, message)
  File.open(filename, 'a') {|f| f.write("#{Time.now} - #{message}") }
end

Chiamata debug('/tmp/log.txt','Test Message') mostrerebbe qualcosa di simile:

2011-12-29 23:31:51 -0500 - Test Message
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top