2013-08-07 7 views
5

Amazon Elastic Load Balancer (ELB) effettua periodici controlli sanitari:Configurare nginx di non log ELB Healthcheck secondaria

Oltre alla stato di salute si configura per il bilanciamento del carico, un secondo controllo sanitario è effettuato da il servizio di protezione contro potenziali effetti collaterali causati dalla chiusura delle istanze senza la registrazione di senza registrazione. Per eseguire questo controllo, il servizio di bilanciamento del carico apre una connessione TCP sulla stessa porta per cui lo stato di integrità è configurato su e chiude la connessione dopo che lo stato di integrità è completato.

nginx registra questi eventi con un errore 400, che capita molte volte per minuti:

[07/Aug/2013:18:32:27 +0000] "-" 0.000 400 0 "-" "-" "-"

come posso configurare nginx di non registrare questi eventi?

+0

P.S. l'impostazione di un 'default_server' non di registrazione non è una soluzione, usiamo' default_server' per indirizzare il traffico da molti nomi host al server upstream corretto. – Meekohi

risposta

7

La soluzione è di non utilizzare versioni precedenti non supportate di nginx. A partire dalla versione 1.3.15 (piuttosto vecchia), nginx non registra gli errori 400 in questi casi.

Vedere changelog per informazioni: http://nginx.org/en/CHANGES

*) Change: opening and closing a connection without sending any data in 
    it is no longer logged to access_log with error code 400. 
+0

Usi moduli di terze parti? Possono rompere nginx in vari modi. – VBart