Los registros de Nginx en el sistema de Linux pueden ver los registros del sistema en ejecución y las descripciones de los errores. El análisis de los registros de Nginx puede comprender el estado del sistema en ejecución. Entonces, ¿cómo analizar el registro de Nginx del sistema Linux?
configuración del registro de Nginx tiene dos lugares: access_log y log_format.
Formato predeterminado:
access_log /data/logs/nginx-access.log;
log_format old ‘ $ remote_addr [$ time_local] $ status $ request_time $ body_bytes_sent ’
‘ " $ request " " $ http_referer " " $ http_user_agent " ’;
Creo que la mayoría de las personas que han usado Nginx están configuradas para el formato de registro Nginx predeterminado. Familiarizado, familiarizado con los contenidos del registro. Sin embargo, la configuración y el formato predeterminados son legibles, pero difíciles de calcular.
La política relacionada con el pincel de registro de Nginx se puede configurar:
Por ejemplo, configure el búfer, búfer lleno 32k para el pincel; si el búfer no está completo, la configuración del pincel forzado en el reloj de 5s es la siguiente:
access_log /data/logs/nginx-access.log buffer = 32k flush = 5s;
Esto determina si el registro se ve en tiempo real y el impacto del registro en la E /S del disco.
Una gran cantidad de variables que los registros de Nginx pueden registrar no aparecen en la configuración predeterminada:
Por ejemplo:
Tamaño de datos de solicitud: $ request_length
Devolver datos Tamaño: $ bytes_sent
Tiempo de solicitud: $ request_time
Número de serie de la conexión: $ connection
Solicitudes de conexión actuales: $ connection_requests
Nginx El formato predeterminado no está calculado y necesita convertirlo a un formato computable, como dividir cada campo con el carácter de control ^ A (crox + v ctrl + a en Mac).
El formato de log_format se puede cambiar así:
log_format nuevo ‘ $ remote_addr ^ A $ http_x_forwarded_for ^ A $ host ^ A $ time_local ^ A $ status ^ A ’
‘ $ request_time ^ A $ request_length ^ A $ bytes_sent ^ A $ http_referer ^ A $ request ^ A $ http_user_agent ’;
Esto es seguido por una herramienta común de línea de comandos de Linux:
Encuentre las URL y los horarios más visitados:
cat access.log |
Awk -F ‘ ^ A ’ ‘ {imprimir $ 10} ’ |
Ordenar |
Uniq -c
Buscar el archivo de registro actual 500 Acceso incorrecto:
cat access.log |
Awk -F ‘ ^ A ’ ‘ {if ($ 5 == 500) print $ 0} ’
Encuentre el archivo de registro actual Número de 500 errores:
cat access.log |
Awk -F ‘ ^ A ’ ‘ {if ($ 5 == 500) imprime $ 0} ’ |
Wc -l
Encuentre el número de 500 accesos de error en un minuto:
cat access.log |
Awk -F ‘ ^ A ’ ‘ {if ($ 5 == 500) imprime $ 0} ’ |
Grep ’ 09: 00 ’ |
Wc-l
Encuentre solicitudes lentas que duren más de 1 s:
tail -f access.log |
Awk -F ‘ ^ A ’ ‘ {if ($ 6》 1) imprime $ 0} ’
Si solo quieres ver algunos bits:
tail -f access.log |
Awk -F ‘ ^ A ’ ‘ {si ($ 6》 1) imprima $ 3 ″ |
" $ 4} ’
Encuentre la URL con la mayoría de los errores 502:
cat access.log |
Awk -F ‘ ^ A ’ ‘ {if ($ 5 == 502) imprime $ 11} ’ |
Ordenar |
Uniq -c
Encuentre 200 páginas en blanco
cat access.log |
Awk -F ‘ ^ A ’ ‘ {if ($ 5 == 200 &&$ 8 "100) imprime $ 3 ″ |
" $ 4 ″ |
" $ 11 ″ |
" $ 6} ’
Ver flujo de datos de registro en tiempo real
tail -f access.log |
Cat -e
o
tail -f access.log |
Tr ‘ ^ A ’ ‘ |
’
De acuerdo con esta idea, puede realizar muchos otros análisis, como el acceso más accesible de UA, la IP a la que se accede con más frecuencia, solicitar análisis que requieren mucho tiempo, solicitar análisis de tamaño de paquete de retorno;
Este es el prototipo de un gran sistema de análisis de registros web, que también es muy conveniente para los posteriores cálculos a gran escala de lotes y transmisión.
Lo anterior es todo el contenido del análisis del registro Nginx del sistema Linux, se puede ver que el registro Nginx todavía tiene un rol muy poderoso.
En muchos comandos de Linux, el comando de instalación y el comando cp pueden copia
La mayoría de los portátiles actuales ya son tarjetas gráficas duales, y se utiliza
ln es un comando importante en el sistema Linux, puede establecer un enlace para el archivo, mantene
MemcacheQ como un servicio de cola distribuida simple, porque no sé de MemcacheQ, muchas personas ha
Cómo usar la guía de comandos rmdir en Linux
Solución de falla de conexión de ADB para Mac o Linux
Cómo modificar el ícono de la aplicación en Ubuntu Gnome
Linux comando chmod resumen de uso
Cómo desarrollar JNDI en el entorno Jetty de Linux
Habilidades de creación de volúmenes lógicos de Linux
Sistema de archivos de producción de contenedores de Linux Pasos
Resumen de métodos para ingresar a la interfaz de terminal de Linux
Ejemplo de operación de tamaño de imagen de compresión por lotes de CentOS
¿El color del comentario de Linux vim no puede ver cómo cambiar?
Explicación detallada de cómo instalar e implementar LXC en Linux
Cómo los sistemas Linux monitorean los nodos de almacenamiento de Mogilefs
Cómo dos equipos para compartir archivos? ordenador de la LAN de papel la forma tradicional?
Agregue un grupo de accesos directos del menú de clic derecho a Win7 y Win8
Coloque la carpeta en el menú de inicio de Vista
El método de instalación de Windows 7 Telnet
¿Qué es el atajo de pantalla de Win10? Tres métodos de captura de pantalla Win10 introdujeron
LOLS5 Finales globales SKT VS KOO Primer juego Ver video ultra claro
Vulnerabilidad de la aplicación de descarga de Windows2008, ¿cómo bloquearla?
¿Cuál es la diferencia entre Win8.1 Standard Edition /Enterprise Edition /Professional Edition
¿Qué pasa si el sistema win7 no puede abrir la unidad óptica?