 | | Offres d'emplois |  | Développeur PHP/MySQL Start-up basée à Chantilly (60) à 35 minutes de Paris, recrute développeur PHP/MySQL confirmé en CDI, pour accompagner sa forte croissance.
Comp... | |
 | | Avez vous lu ? |  | | |
|
 Le programme complet | |  |

<?php
// --- inclusion, initialisation de la classe
include_once ("classe_systeme.php");
$sysinfos = new systeme();
$pbs = array();
// --- test de la charge
$tb = $sysinfos->infos_charge();
if ($tb[1] > 2) {
$pbs[] = "Charge système:" . $tb[1];
}
// --- le serveur a-t-il été rebooté ?
$duree = $sysinfos->infos_charge(0);
$maintenant = date("U");
$temps = $maintenant - $durée;
if ($temps < 3600) {
$pbs[] = "Le système a été rebooté il y a $temps secondes";
}
// --- test de la zone de swap
$tb = $sysinfos->infos_memoire();
if ($tb['swap']['percent'] > 50) {
$pbs[] = "Zone swap occupée à " . $tb[1] . '%';
}
// --- occupation des différentes partitions
$tb = $sysinfos->infos_disque();
// --- on boucle sur chaque partition
for ($i=0; $i<count($tb); $i++) {
if ($tb[$i]['percent'] > 90) {
$pbs[] = "Partition " . $tb[$i]['disk'] . " occupée à "
. $tb[$i]['percent'] . '%';
}
}
// --- un message a-t-il déjà été envoyé ?
$envoyer = 0;
if (count($pbs) > 0) {
$dt = date("U");
$dt_fichier = filemtime('message_systeme');
if (($dt - $dt_fichier) > 3600) $envoyer = 1;
}
// --- composition et envoi du message
if ($envoyer) {
$message = date("Y-m-d H:i:s") . "\n\r";
for ($i=0; $i<count($pbs); $i++) {
$message .= $pbs[$i] . "\n\r";
}
mail("admin.comaine.com", "Problème système", $message);
// --- stockage du fichier témoin sur le disque
if($fp = fopen('message_systeme',"w")){
fputs($fp,$message);
fclose($fp);
}
}
?>
|
|
|
 |
|