Nginx è un potente server proxy a livello di applicazione. Sia per la risoluzione dei problemi che per l’analisi, abilitare i livelli di log e i formati personalizzati per i log di accesso/errore è un requisito comune.
Log degli errori
Per impostazione predefinita, vengono registrati solo i messaggi nella categoria di errore. Se si desidera abilitare maggiori dettagli, modificare nginx.,conf like:
error_log file
Abilitare il livello di debug su Linux di solito sarebbe simile a:
error_log /var/log/nginx/error.log debug;
Log di accesso
Log di accesso e il loro formato sono anche personalizzati in nginx.conf. Per impostazione predefinita, se non viene specificato alcun formato, viene utilizzato il formato combinato.
access_log file
Quindi la sintassi più comune su un sistema Linux è:
access_log /var/log/nginx/access.log;
Che è l’equivalente di specificare esplicitamente il formato combinato come di seguito:
Usare il formato di log combinato può essere molto conveniente dal momento che così tanti strumenti di analisi, ELK o splunk) hanno filtri pre-costruiti per consumare questi registri. Tuttavia, quando è necessario, ad esempio quando Nginx è in ascolto su più porte e devi sapere su quale porta è arrivato il traffico, allora ha senso deviare dal formato combinato.
Ad esempio, se si desidera aggiungere la porta del traffico in arrivo, utilizzare la variabile ser server_port e il proprio nginx.conf sarebbe simile a:
Altre variabili disponibili possono essere trovate nella documentazione qui.