- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 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("[email protected]", "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 минут.
Vasiliy 24.12.2010 13:06 # 0
checkLongProcesses();
sleep(30);
checkLongProcesses();
если одно письмо попадет в спам.