Nginx es un poderoso servidor proxy de nivel de aplicación. Ya sea para la solución de problemas o el análisis, habilitar los niveles de registro y los formatos personalizados para los registros de acceso/error es un requisito común.

registros de Error

de forma predeterminada, solo se registran los mensajes de la categoría de error. Si desea habilitar más detalles, modifique nginx.,conf como:

error_log file 

habilitar el nivel de depuración en Linux generalmente se vería como:

error_log /var/log/nginx/error.log debug;

registros de acceso

los registros de acceso y su formato también se personalizan en nginx.conf. De forma predeterminada, si no se especifica ningún formato, se utiliza el formato combinado.

access_log file 

así que la sintaxis más común en un sistema Linux se ve como:

access_log /var/log/nginx/access.log;

que es el equivalente de especificar explícitamente el formato combinado como a continuación:

usar el formato de registro combinado puede ser muy conveniente ya que muchas herramientas de análisis de Registros (P., ELK o splunk) tienen filtros prediseñados para consumir estos registros. Sin embargo, cuando hay una necesidad, como cuando Nginx está escuchando en varios puertos y necesita saber en qué puerto llegó el tráfico, entonces tiene sentido desviarse del formato combinado.

por ejemplo, si desea agregar el puerto de tráfico que llega, entonces usaría la variable ser server_port y su nginx.conf se vería así:

otras variables disponibles se pueden encontrar en la documentación aquí.