FastCGI Process Manager Observability

상태 페이지

이 페이지는 FPM 상태 페이지의 설정 및 내용에 대한 정보를 제공합니다. fpm_get_status()도 참조하십시오.


구성

FPM 상태 페이지는 FPM 풀 구성에서 pm.status_path 구성 매개변수를 설정하여 활성화할 수 있습니다.

주의 보안을 위해 FPM 상태 페이지는 요청 URL과 사용 가능한 리소스에 대한 정보를 표시하므로 내부 요청 또는 알려진 클라이언트 IP로만 제한되어야 합니다.

웹 서버 구성에 따라 PHP 스크립트를 우회하여 이 경로에 대한 요청을 직접 허용하도록 웹 서버를 구성해야 할 수도 있습니다. FPM이 UDS에서 수신 대기하고 pm.status_path가 /fpm-status로 설정된 Apache 구성의 예는 다음과 같습니다.

<LocationMatch "/fpm-status">
 Order Allow,Deny
 Allow from 127.0.0.1
 ProxyPass "unix:/var/run/php-fpm.sock|fcgi://localhost/fpm-status"
</LocationMatch>
                

FPM과 웹 서버를 다시 로드하거나 다시 시작한 후 브라우저에서 상태 페이지에 액세스할 수 있습니다(IP 제한이 구성된 경우 허용된 IP 주소에서 요청이 오는 한).

쿼리 매개변수

상태 페이지 출력 형식은 다음 쿼리 매개변수 중 하나를 지정하여 변경할 수 있습니다.

  • html
  • json
  • openmetrics
  • xml

full 쿼리 매개변수를 사용하여 추가 정보를 반환할 수도 있습니다.

상태 페이지 URL의 예:

  • https://localhost/fpm-status - Brief output in the default text format
  • https://localhost/fpm-status?full - Full output in the default text format
  • https://localhost/fpm-status?json - Brief output in JSON format
  • https://localhost/fpm-status?html&full - Full output in HTML format

표시된 정보

날짜/시간 값은 JSON 및 XML 출력에서 ​​Unix 타임스탬프 형식을 사용합니다. 그렇지 않으면 형식을 사용하여 다음 예제 날짜 "03/Jun/2021:07:21:46 +0100"이 됩니다.

기본 정보 - 항상 상태 페이지에 표시

Parameter 설명
pool FPM 프로세스 풀의 이름입니다.
proccess manager 프로세스 관리자 유형 - 정적, 동적 또는 주문형.
start time 프로세스 풀이 마지막으로 시작된 날짜/시간입니다.
start since 프로세스 풀이 마지막으로 시작된 이후의 시간(초)입니다.
accepted conn 수락된 연결의 총 수입니다.
listen queue 현재 사용 가능한 프로세스를 기다리고 있는 요청(백로그) 수입니다.
max listen queue 한 번에 청취 대기열에서 볼 수 있는 최대 요청 수입니다.
listen queue len 청취 큐의 최대 허용 크기입니다.
idle processes 현재 유휴 상태(요청 대기 중)인 프로세스의 수입니다.
active processes 현재 요청을 처리 중인 프로세스 수입니다.
total processes 현재 총 프로세스 수입니다.
max active processes 동시 활성 프로세스의 최대 수입니다.
max children reached 최대 프로세스 수에 도달한 적이 있습니까? 그렇다면 표시된 값은 1이고 그렇지 않으면 값은 0입니다.
slow requests 구성된 request_slowlog_timeout에 도달한 총 요청 수입니다.

프로세스별 정보 - full 출력 모드에서만 표시

Parameter 설명
pid 프로세스의 시스템 PID입니다.
state 프로세스 상태 - 유휴, 실행 중, ...
start time 프로세스가 시작된 날짜/시간입니다.
start since 프로세스가 시작된 후 경과된 시간(초)입니다.
requests 제공된 총 요청 수입니다.
request duration 요청을 처리하는 데 소요된 총 시간(초)입니다.
request method 마지막으로 제공된 요청의 HTTP 메서드입니다.
request uri 마지막으로 제공된 요청의 URI(웹 서버 처리 후 전면 컨트롤러 패턴 리디렉션을 사용하는 경우 항상 /index.php일 수 있음).
content length 마지막 요청의 요청 본문 길이(바이트)입니다.
user 마지막 요청의 HTTP 사용자(PHP_AUTH_USER)입니다.
script 마지막 요청에 의해 실행된 스크립트의 전체 경로입니다. 적용되지 않는 경우(예: 상태 페이지 요청) '-'입니다.
last request cpu 마지막 요청의 %cpu입니다. 요청 처리가 완료될 때 계산이 완료되기 때문에 프로세스가 유휴 상태가 아니면 0이 됩니다.
last request memory 마지막 요청에서 사용한 최대 메모리 양입니다. 요청 처리가 완료될 때 계산이 완료되기 때문에 프로세스가 유휴 상태가 아니면 0이 됩니다.

메모: 모든 값은 풀에 고유하며 FPM이 다시 시작될 때 재설정됩니다.

메모: OpenMetrics 형식 출력은 OpenMetrics 형식에 더 잘 맞도록 다양한 매개변수 유형을 사용합니다. 매개변수 및 해당 값에 대한 설명은 OpenMetrics 형식 출력에 포함됩니다.


변경 로그

버전 설명
8.1.0 openmetrics 형식이 추가되었습니다.