Cómo habilitar y monitorear el estado de PHP-FPM en Nginx

Cómo habilitar y monitorear el estado de PHP-FPM en Nginx

PHP-FPM. ( FastCGI Process Manager. es una implementación alternativa de PHP FastCGI. que viene con una serie de características adicionales útiles para sitios web de cualquier tamaño, en particular sitios que reciben mucho tráfico.

Se usa comúnmente en la pila LEMP. ( Linux Nginx MySQL/MariaDB PHP. ; Nginx. utiliza PHP FastCGI. para ofrecer contenido HTTP. dinámico en una red. Se está utilizando para atender millones de solicitudes PHP. para cientos de sitios web en servidores web en Internet.

Lea también. Cómo habilitar el estado de NGINX Página

Una de las funciones útiles de php-fpm. es la página de estado incorporada, que puede ayudarlo a controlar su estado. En este artículo, mostraremos cómo habilitar la página de estado de PHP-FPM. en Linux.

Cómo habilitar la página de estado de PHP-FPM en Linux

Primero abra el archivo de configuración php-fpm. y habilite la página de estado como se muestra.

$ sudo vim/etc/php-fpm.d/www.conf O $ sudo vim/etc/php/7.2/fpm/pool.d/www.conf # para las versiones de PHP 5.6, 7.0, 7.1 freestar.config.enabled_slots.push

Dentro de este archivo, busque y elimine el comentario de la variable pm.status_path =/status como se muestra en la captura de pantalla.

Habilitar la página de estado de PHP-FPM  Habilitar estado de PHP-FPM Página Habilitar Página de estado de PHP-FPM

Guarde los cambios y salga del archivo.

A continuación, verifique que no haya errores en el archivo de configuración PHP-FPM. ejecutando el siguiente comando.

$ sudo php-fpm-t O $ sudo php7.2-fpm-t  Verificar archivo de configuración PHP-FPM  Verificar archivo de configuración PHP-FPM Verifique el archivo de configuración PHP-FPM

Luego reinicie PHP-FPM. para aplicar los cambios recientes.

$ sudo systemctl restart php-fpm O $ sudo systemctl restart php7.2-fpm

A continuación, edite su serv predeterminado er block. ( host virtual. y agregue el bloque de ubicación. a continuación. Por ejemplo, en el sistema de prueba, el archivo de configuración del bloque de servidor predeterminado es /etc/nginx/conf.d/default.conf. para el sitio test.lab.

$ sudo vim/etc/nginx/conf.d/default.conf

Aquí está el bloque de ubicación. que se agregará. En esta configuración, solo permitimos el acceso al estado del proceso PHP-FPM. dentro del localhost usando la directiva allow 127.0.0.1. por razones de seguridad.

location ~ ^/(estado | ping) $ allow 127.0.0.1; fastcgi_param SCRIPT_FILENAME $ raíz_documento $ fastcgi_script_name; fastcgi_index index.php; incluir fastcgi_params; #fastcgi_pass 127.0.0.1:9000; fastcgi_pass unix:/var/run/php7.2-fpm.sock;

Guarde el archivo y ciérrelo.

Luego reinicie el servidor Nginx. para aplicar los cambios anteriores.

$ sudo systemctl restart nginx

Ahora abra un navegador y escriba la URL http://test.lab/status para ver el estado de su proceso PHP-FPM.

 Ver PHP-FPM Página de estado  Ver la página de estado de PHP-FPM Ver la página de estado de PHP-FPM

Alternativamente, use el programa curl de la siguiente manera, donde la bandera-L especifica la ubicación de la página.

$ curl-L http://test.lab/status

Por defecto, la página de estado solo imprime un resumen o estado breve. Para ver el estado de cada proceso de grupo, pase “completo”. en la cadena de consulta, por ejemplo:

http://www.foo.bar/status?full

Puede definir el formato de salida (JSON, HTML o XML) como se muestra.

http://www.foo.bar/status?json&full http://www.foo.bar/status?html&full http://www.foo .bar/status? xml & full

A continuación se muestran los valores devueltos en el estado completo php-fpm. para cada proceso:

  • pid. PID del proceso.
  • estado. estado del proceso (inactivo, en ejecución, etc.).
  • hora de inicio. fecha y hora en que comenzó el proceso.
  • inicio desde. número de segundos desde que comenzó el proceso.
  • solicitudes. número de solicitudes que ha atendido el proceso.
  • duración de la solicitud. duración en µs de las solicitudes.
  • método de solicitud. solicitud método (GET, POST, etc.).
  • request URI. solicite URI con la cadena de consulta.
  • longitud del contenido. longitud del contenido de la solicitud (solo con POST).
  • usuario. usuario ( PHP_AUTH_USER) (o ‘-‘ si no está configurado).
  • script. secuencia de comandos principal llamada (o ‘-‘ si no está configurada).
  • última solicitud cpu. % cpu la última solicitud consumida (tenga en cuenta que siempre es 0 si el proceso no está en estado inactivo).
  • memoria de la última solicitud. máx. cantidad de memoria consumida por la última solicitud (siempre es 0 si el proceso no está en estado inactivo).

¡Eso es todo por ahora! En este artículo, explicamos cómo habilitar la página de estado php-fpm. en el servidor web Nginx. Utilice el formulario de comentarios a continuación para compartir sus pensamientos con nosotros.