PHP-FPM: как узнать, какие строки кода долго выполняются

PHP-FPM поддерживает опцию журналирования медленных участков кода. Для её включения, необходимо в конфигурационный файл воркера добавить строки:

slowlog = /var/log/php-fpm/www-slow.log
request_slowlog_timeout = 5s

где slowlog — принимает путь, до файла для ведения журнала;
request_slowlog_timeout — задаёт максимальное время исполнения команды интерпретатора, при превышении которого она будет добавлена в журнал.

Bash: сценарий удаления таблиц MySQL

Код сценария для удаления всех таблиц базы данных MySQL без удаления самой базы:

#!/bin/bash
MUSER="$1"
MPASS="$2"
MDB="$3"
 
# Detect paths
MYSQL=$(which mysql)
AWK=$(which awk)
GREP=$(which grep)
 
if [ $# -ne 3 ]
then
	echo "Usage: $0 {MySQL-User-Name} {MySQL-User-Password} {MySQL-Database-Name}"
	echo "Drops all tables from a MySQL"
	exit 1
fi
 
TABLES=$($MYSQL -u $MUSER -p$MPASS $MDB -e 'show tables' | $AWK '{ print $1}' | $GREP -v '^Tables' )
 
for t in $TABLES
do
	echo "Deleting $t table from $MDB database..."
	$MYSQL -u $MUSER -p$MPASS $MDB -e "drop table $t"
done

Пример использования:

$ ./drop_tables.sh user_name password database_name

file_get_contents: SSL operation failed

При использовании функции file_get_contents("https://api.sypexgeo.net/json/".$ip), отображаются следующие ошибки PHP:
Warning: file_get_contents(): SSL operation failed with code 1. OpenSSL Error messages: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed in geoip.php on line 114
Warning: file_get_contents(): Failed to enable crypto in geoip.php on line 114
Warning: file_get_contents(https://api.sypexgeo.net/json/93.101.178.154): failed to open stream: operation failed in geoip.php on line 114

В такой ситуации, рабочим вариантом будет использование функции file_get_contents("http://api.sypexgeo.net/json/".$ip)

PHP не отображает ошибки

Если при включенном режиме отображения ошибок они таки не отображаются и не пишутся в лог файлы, то не плохо бы проверить файл скрипта на наличие @include_once и, в случае наличия оных, убрать собаку:

sudo grep -rl ‘@include_once’ /путь_до_папки_со_скриптами | sudo xargs sed -i ‘s/@include_once/include_once/g’