0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
//exit;
define("CACHE_USE", false);
require("/usr/home/<path_to_config>/config.php");
require_once(PATH_CLASSES . "/DB.Class.php");
DB::connect(DBHOST, DBUSERNAME, DBPASSWORD, DBNAME);
checkLongProcesses();
sleep(30);
checkLongProcesses();
function checkLongProcesses() {
$pslist = DB::query("SHOW PROCESSLIST");
if (sizeof($pslist) > 25) {
mail("mysqlmonitor@some.domain", "SQL Processes Monitor Report", print_r($pslist, true));
echo "Killing long queries...\n\n";
foreach ($pslist as $el) {
if ($el['Time']>10) {
echo "Killing process: " . $el['Id'] . "\n";
echo $el['Info'] . "\n\n";
DB::query("KILL " . $el['Id']);
}
}
}
}
Достался проект с кодом различной говнистости. Вот такое, например, запускается кроном каждые 10 минут.
Запостил:
wmmorgun ,
21.12.2010 (Updated 24.03.2018 )
checkLongProcesses();
sleep(30);
checkLongProcesses();
если одно письмо попадет в спам.