File: //platform/healthchecks/pagely-fpm-healthcheck-iterator.sh
#!/bin/bash
# iterate all listen directives in FPM pools and check them
FOUND_FPM_BINDS=0
for LISTEN_ADDR in $(grep -E '^listen ?= ?' /fpm-pools/*.conf | awk '{print $NF}'); do
FOUND_FPM_BINDS=1
echo "Pool: ${LISTEN_ADDR}";
FCGI_CONNECT="${LISTEN_ADDR}" FCGI_STATUS_PATH=/fpmstatus /platform/healthchecks/pagely-fpm-healthcheck.sh
RETCODE=$?
if [[ $RETCODE -ne 0 ]]; then
echo "Status: BAD";
exit $RETCODE;
fi;
echo "Status: GOOD";
done;
# Error if we are running the FPM healthcheck but we didn't find any pools
if [[ $FOUND_FPM_BINDS -eq 0 ]]; then
echo "Unable to find any FPM binds.";
exit 1;
fi;
exit 0;