Beispiel #1
0
<?php

// include general functions
include_once 'inc/functions.inc.php';
// check login
if (isset($_SESSION['user'])) {
    try {
        // spawn servertest object
        $sTest = new serverTest();
        include_once 'inc/head.inc.php';
        print "<h2>Probe overview (realtime data)</h2>";
        print "<hr />";
        print "<table summary=\"overview\">";
        print "<tr><th style=\"width: 200px;\">Probe</th><th style=\"width: 50px;\">Status</th><th style=\"width: 80px;\">Time (s)</th><th>Additional information (max. " . $maxreplychars . " chars)</th></tr>";
        $servers = $_SESSION['db']->getAllProbes();
        foreach ($servers as $server) {
            // only show active probes
            if ($server['check'] == true) {
                // users may only see their own probes
                if ($_SESSION['user']->isUser()) {
                    if ($_SESSION['user']->ownsProbe($server['id'])) {
                        print "<tr>";
                        $sTest->setTitle($server['name']);
                        $sTest->setServer($server['url']);
                        $sTest->setFindstring($server['findstring']);
                        $sTest->setVersion($version);
                        $sTest->setHostname($hostname);
                        try {
                            $sTest->test();
                            if ($sTest->getStatus() == true) {
                                $message = "<img src=\"img/good.png\" alt=\"ok\"/></td><td>" . $sTest->getBenchmark()->timeElapsed();
Beispiel #2
0
#!/package/host/localhost/php-5/bin/php
<?php 
include_once 'inc/config.default.inc.php';
require_once 'class/class.servertest.php';
require_once 'class/class.database.php';
require_once 'class/class.sendmail.php';
require_once 'class/class.shorturl.php';
$currentminute = date("i");
//$currentminute = 5;
$fp = fopen("./tmp/lock.txt", "w+");
if (flock($fp, LOCK_EX | LOCK_NB)) {
    // do an exclusive lock
    $sTest = new serverTest();
    try {
        $db = new database($dbuser, $dbpass, $dbhost, $dbname);
        $servers = $db->getAllProbesToCheck();
        foreach ($servers as $server) {
            if ($currentminute % $server['checkinterval'] == 0) {
                print "Probing " . $server['name'];
                $mystatus = false;
                $sTest->setTitle($server['name']);
                $sTest->setServer($server['url']);
                $sTest->setHost($server['host']);
                $sTest->setFindstring($server['findstring']);
                $sTest->setVersion($version);
                $sTest->setHostname($hostname);
                try {
                    $sTest->test();
                    // test again to make sure we really have a problem and avoid accidental mails
                    if ($sTest->getStatus() == false) {
                        $random = rand(1, 15);