Likes Likes:  0
Resultaten 46 tot 60 van de 62
Pagina 4 van de 5 Eerste ... 2 3 4 5 LaatsteLaatste
Geen

Onderwerp: [TK] NOC Script

  1. #46
    [TK] NOC Script
    Sebastiaan Stok
    2.468 Berichten
    Ingeschreven
    20/12/04

    Locatie
    Rotterdam

    Post Thanks / Like
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)
    86 Berichten zijn liked


    Naam: Sebastiaan Stok

    Ik heb nu het Noc-script maar ik mis servercheck.php

    En hoe berekend je de gemidelde uptime?
    Park The Hosting Manager - your friend in hosting software

  2. #47
    [TK] NOC Script
    geregistreerd gebruiker
    1.084 Berichten
    Ingeschreven
    17/02/03

    Locatie
    Hoorn

    Post Thanks / Like
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    5 Berichten zijn liked


    Naam: Raymond Karsten
    KvK nummer: 37109993
    Ondernemingsnummer: nvt

    Je checkt per minuut... Elke check sla je op. dus check++

    Dan heb je ook nog uptime. Als hij up is geef je + 100 anders doe je + 0

    Dan doe je uptime / checks = gemiddelde

    Voorbeeld: http://noc.intronic.nl/

    servercheck.php (deze is wel heel erg aangepast door mijzelf...)
    PHP Code:
    <?php

    include("config.php");

    function 
    checkserver($ip,$poort){
        if(
    $poort == 80){
            
    $fp = fopen("http://". $ip ."/noc.php","r");
            if(!
    $fp){
                return 
    false;
            } else {
                
    $content = trim(fgets($fp));
                if(
    $content > 100){
                    return 
    false;
                } else {
                    return 
    true;
                }
            }
        } elseif(
    $poort == 3306){
            
    $conn = fsockopen($ip,$poort,$errno,$err,5);
            if(!
    $conn){
                return 
    false;
            } else {
                return 
    true;
            }
        } elseif(
    $poort == 21){
            
    $conn = ftp_connect($ip);
            if(!
    $conn){
                return 
    false;
            } else {
                return 
    true;
            }
        } else {
            
    $conn = fsockopen($ip,$poort,$errno,$err,5);
            if(!
    $conn){
                return 
    false;
            } else {
                return 
    true;
            }
        }
    }

    $servers = $db->query("SELECT * FROM servers");
    while(
    $row = $db->fetch($servers)){
      
        
    $maand = date("m-Y");
        
    $select = $db->query("SELECT * FROM uptime WHERE maand = '".$maand."' AND serverid = '".$row["serverid"]."'");
        if(
    $db->num($select) == "1") {
            
    $data = $db->fetch($select);
            
    $checks = $data['checks'];
            
    $uptime = $data['uptime'];
        } else {
            
    $checks = "0";
            
    $uptime = "0";
        }
        
    /*
        Status 30 is goed te bereiken, 20 is 1x slecht te bereiken geweest,
        status 10 is 2x slecht te bereiken geweest en status 0 is echt down.
        */
        
        
    $check = checkserver($row["ip"], $row["poort"]);
        if(!
    $check){
            if(
    $row["status"] == 30){
                
    $status = 20;
                
    $checks = $checks+1;
                
    $uptime = $uptime+100;
                
    $email = 0;
            } elseif(
    $row["status"] == 20) {
                
    $status = 10;
                
    $checks = $checks+1;
                
    $uptime = $uptime+100;
                
    $email = 0;    
            } elseif(
    $row["status"] == 10) {
                
    $status = 0;
                
    $checks = $checks+1;
                
    $uptime = $uptime+0;
                
    $email = 1;            
            } else {
                
    $status = 0;
                
    $checks = $checks+1;
                
    $uptime = $uptime+0;
                
    $email = 0;
            }    
        } else {
            
    $status = 30;
            
    $checks = $checks+1;
            
    $uptime = $uptime+100;
            
    $email = 0;
        }
        
        if(
    $email == 1) {
            
    $server = explode(".",$row['hostname']);
            
    $onderwerp = strtoupper($server[0]).": ".$row['servicetype']." DOWN";
            
    $to = $config_email1;
                        
            
    $header = "From: ".strtoupper($server[0])."\n";
            
    $header .= "Bcc: ".$config_email2."\n";

            
    mail($to,$onderwerp,"",$header);
        }
        
        
    $maand = date("m-Y");
        
    $select = $db->query("SELECT * FROM uptime WHERE maand = '".$maand."' AND serverid = '".$row["serverid"]."'");
        if(
    $db->num($select) == "1") {
            
    $db->query("UPDATE uptime SET uptime = '".$uptime."', checks = '".$checks."' WHERE serverid = '". $row["serverid"] ."' AND maand = '".$maand."'");
            
    $db->query("UPDATE servers SET last_check = '".mktime()."', status = '".$status."' WHERE serverid = '".$row["serverid"]."'");
        } else {
            
    $db->query("INSERT INTO `uptime` (`uptimeid`, `serverid`, `maand`, `uptime`, `checks`) VALUES ('', '".$row["serverid"]."', '".$maand."', '".$uptime."', '".$checks."');");
            
    $db->query("UPDATE servers SET last_check = '".mktime()."', status = '".$status."' WHERE serverid = '".$row["serverid"]."'");
        }    
    }

    ?>
    Laatst gewijzigd door RayManZ; 01/06/06 om 21:25.

  3. #48
    [TK] NOC Script
    EK-Hosting
    2.899 Berichten
    Ingeschreven
    07/06/05

    Locatie
    Hardenberg

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    4 Berichten zijn liked


    Naam: Erik Kosters
    Bedrijf: EK-Hosting
    Functie: Eigenaar
    URL: ek-hosting.nl
    KvK nummer: 05078937

    Graag ontopic..

  4. #49
    [TK] NOC Script
    geregistreerd gebruiker
    6.041 Berichten
    Ingeschreven
    23/10/04

    Locatie
    Amersfoort

    Post Thanks / Like
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    171 Berichten zijn liked


    Functie: Freelance IT Professional
    URL: localhost
    View randytenhave's profile on LinkedIn

    Code:
    <?php
    
    include("./inc/config.php");
    
    function checkserver($ip,$poort){
    	if($poort == 80){
    		$fp = fopen("http://". $ip ."/noc.php","r");
    		if(!$fp){
    			return false;
    		} else {
    			$content = trim(fgets($fp));
    			if($content > 5){
    
    			// Load is hoger dan 5 waarschuwing sms sturen naar de beheerder
    			mysql_query("UPDATE `servers` SET `load`= '". $content ."' WHERE `ip` = '". $ip ."' LIMIT 1");
    
    				return false;
    			} else {
    				
    			mysql_query("UPDATE `servers` SET `load`= '". $content ."' WHERE `ip` = '". $ip ."' LIMIT 1");
    				
    				return true;
    			}
    		}
    	} elseif($poort == 3306){
    		$conn = fsockopen($ip,$poort,$errno,$err,5);
    		if(!$conn){
    			return false;
    		} else {
    			return true;
    		}
    	} elseif($poort == 21){
    		$conn = ftp_connect($ip);
    		if(!$conn){
    			return false;
    		} else {
    			ftp_close($conn);
    			return true;
    		}
    	} else {
    		$conn = fsockopen($ip,$poort,$errno,$err,5);
    		if(!$conn){
    			return false;
    		} else {
    			return true;
    		}
    	}
    }
    
    function sendsms($sms, $afzender, $sms_user, $sms_pass, $sms_url){
    	$select = mysql_query("SELECT `telefoon` FROM `ontvangers`");
    	while($row = mysql_fetch_array($select)){
    		$telefoon .= $row["telefoon"].",";
    	}
    		$sms = urlencode($sms);
    		$to = urlencode($telefoon);
    		$$afzender = urlencode($afzender);
    		$url = $sms_url."?username=". $sms_user ."&password=". $sms_pass ."&afzender=". $afzender ."&ontvanger=". $to ."&message=". $sms;
    		$result = implode ('', file($url));
    }
    
    $sms = NULL;
    $select = mysql_query("SELECT * FROM `servers`");
    while($row  = mysql_fetch_array($select)){
    	
    	/*
    	Status 30 is goed te bereiken, 20 is 1x slecht te bereiken geweest,
    	status 10 is 2x slecht te bereiken geweest en status 0 is echt down.
    	*/
    	
    	$check = checkserver($row["ip"], $row["poort"]);
    	if(!$check){
    		if($row["status"] == 30){
    			$status = 20;
    		} elseif($row["status"] == 20){
    			$status = 10;
    		} elseif($row["status"] == 10){
    			$status = 0;
    			$last = mysql_query("SELECT `last_sms` FROM `servers`  WHERE `serverid` = '". $row["serverid"] ."' LIMIT 1");
    			$fetch = mysql_fetch_array($last);
    			
    			$diff = time() - $fetch["last_sms"];
    			if($diff > 1800){			
    				$sms .= $row["ip"].":".$row["poort"]." is offline (". $row["servicetype"] .")";
    				mysql_query("UPDATE `servers` SET `last_sms`= UNIXTIMESTAMP () WHERE `serverid` = '". $row["serverid"] ."' LIMIT 1");
    			}
    		} else {
    			$status = 0;
    		}    
    	} else {
    		$status = 30;
    	}
    	$sql = "UPDATE `servers` SET `last_check` = UNIX_TIMESTAMP(), `status` = '$status' WHERE `serverid` = '". $row["serverid"] ."' LIMIT 1";
    	if(!mysql_query($sql)){
    		echo mysql_error();
    	}	
    }
    
    if(!empty($sms)){
    
    mail($emailadres, $onderwerp, "Bericht: \n$sms", "From: $sitenaam"); 
    
    //	sendsms($sms, $afzender, $sms_user, $sms_pass, $sms_url);
    }
    unset($sms);
    
    ?>
    MultiMaak - Voor persoonlijke cadeau's en relatiegeschenken!

  5. #50
    [TK] NOC Script
    Sebastiaan Stok
    2.468 Berichten
    Ingeschreven
    20/12/04

    Locatie
    Rotterdam

    Post Thanks / Like
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)
    86 Berichten zijn liked


    Naam: Sebastiaan Stok

    Ik snap het

    Ik zal cheks dan wel moeten omzetten naar minimum van een tijd(dag/maand) omdat ik nog geen aparte NOC-server heb.
    En als deze server uitvald klop die cheks niet meer Krijg ik bijna altijd 100%


    Bedank voor de informatie.
    Park The Hosting Manager - your friend in hosting software

  6. #51
    [TK] NOC Script
    geregistreerd gebruiker
    222 Berichten
    Ingeschreven
    12/09/05

    Locatie
    Tholen

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: Nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    Citaat Oorspronkelijk geplaatst door Rollerscapes
    Ik snap het

    Ik zal cheks dan wel moeten omzetten naar minimum van een tijd(dag/maand) omdat ik nog geen aparte NOC-server heb.
    En als deze server uitvald klop die cheks niet meer Krijg ik bijna altijd 100%


    Bedank voor de informatie.
    Rollerscapes kan jij dan het aangepaste noc script uploaden want ik heb ook wel interrese in een uptime report.

    Trouwens weet iemand waarom er af en toe geen Load meer bij staat

  7. #52
    [TK] NOC Script
    Deactro
    1.772 Berichten
    Ingeschreven
    04/11/04

    Locatie
    Tiel

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: Ja
    KvK nummer: 11051476
    Ondernemingsnummer: nvt

    Citaat Oorspronkelijk geplaatst door RayManZ
    Je checkt per minuut... Elke check sla je op. dus check++

    Dan heb je ook nog uptime. Als hij up is geef je + 100 anders doe je + 0

    Dan doe je uptime / checks = gemiddelde

    Voorbeeld: http://noc.intronic.nl/

    servercheck.php (deze is wel heel erg aangepast door mijzelf...)
    PHP Code:
    <?php

    include("config.php");

    function 
    checkserver($ip,$poort){
        if(
    $poort == 80){
            
    $fp = fopen("http://". $ip ."/noc.php","r");
            if(!
    $fp){
                return 
    false;
            } else {
                
    $content = trim(fgets($fp));
                if(
    $content > 100){
                    return 
    false;
                } else {
                    return 
    true;
                }
            }
        } elseif(
    $poort == 3306){
            
    $conn = fsockopen($ip,$poort,$errno,$err,5);
            if(!
    $conn){
                return 
    false;
            } else {
                return 
    true;
            }
        } elseif(
    $poort == 21){
            
    $conn = ftp_connect($ip);
            if(!
    $conn){
                return 
    false;
            } else {
                return 
    true;
            }
        } else {
            
    $conn = fsockopen($ip,$poort,$errno,$err,5);
            if(!
    $conn){
                return 
    false;
            } else {
                return 
    true;
            }
        }
    }

    $servers = $db->query("SELECT * FROM servers");
    while(
    $row = $db->fetch($servers)){
      
        
    $maand = date("m-Y");
        
    $select = $db->query("SELECT * FROM uptime WHERE maand = '".$maand."' AND serverid = '".$row["serverid"]."'");
        if(
    $db->num($select) == "1") {
            
    $data = $db->fetch($select);
            
    $checks = $data['checks'];
            
    $uptime = $data['uptime'];
        } else {
            
    $checks = "0";
            
    $uptime = "0";
        }
        
    /*
        Status 30 is goed te bereiken, 20 is 1x slecht te bereiken geweest,
        status 10 is 2x slecht te bereiken geweest en status 0 is echt down.
        */
        
        
    $check = checkserver($row["ip"], $row["poort"]);
        if(!
    $check){
            if(
    $row["status"] == 30){
                
    $status = 20;
                
    $checks = $checks+1;
                
    $uptime = $uptime+100;
                
    $email = 0;
            } elseif(
    $row["status"] == 20) {
                
    $status = 10;
                
    $checks = $checks+1;
                
    $uptime = $uptime+100;
                
    $email = 0;    
            } elseif(
    $row["status"] == 10) {
                
    $status = 0;
                
    $checks = $checks+1;
                
    $uptime = $uptime+0;
                
    $email = 1;            
            } else {
                
    $status = 0;
                
    $checks = $checks+1;
                
    $uptime = $uptime+0;
                
    $email = 0;
            }    
        } else {
            
    $status = 30;
            
    $checks = $checks+1;
            
    $uptime = $uptime+100;
            
    $email = 0;
        }
        
        if(
    $email == 1) {
            
    $server = explode(".",$row['hostname']);
            
    $onderwerp = strtoupper($server[0]).": ".$row['servicetype']." DOWN";
            
    $to = $config_email1;
                        
            
    $header = "From: ".strtoupper($server[0])."\n";
            
    $header .= "Bcc: ".$config_email2."\n";

            
    mail($to,$onderwerp,"",$header);
        }
        
        
    $maand = date("m-Y");
        
    $select = $db->query("SELECT * FROM uptime WHERE maand = '".$maand."' AND serverid = '".$row["serverid"]."'");
        if(
    $db->num($select) == "1") {
            
    $db->query("UPDATE uptime SET uptime = '".$uptime."', checks = '".$checks."' WHERE serverid = '". $row["serverid"] ."' AND maand = '".$maand."'");
            
    $db->query("UPDATE servers SET last_check = '".mktime()."', status = '".$status."' WHERE serverid = '".$row["serverid"]."'");
        } else {
            
    $db->query("INSERT INTO `uptime` (`uptimeid`, `serverid`, `maand`, `uptime`, `checks`) VALUES ('', '".$row["serverid"]."', '".$maand."', '".$uptime."', '".$checks."');");
            
    $db->query("UPDATE servers SET last_check = '".mktime()."', status = '".$status."' WHERE serverid = '".$row["serverid"]."'");
        }    
    }

    ?>

    Worden jou uptime percentages per maand daar ook automatisch mee berekend?

  8. #53
    [TK] NOC Script
    Sebastiaan Stok
    2.468 Berichten
    Ingeschreven
    20/12/04

    Locatie
    Rotterdam

    Post Thanks / Like
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)
    86 Berichten zijn liked


    Naam: Sebastiaan Stok

    Over de uptime: Ik gaat zelf iets maken, ik heb alleen een voorbeeld nodig.
    Ik zelf werkt met php5 en postgresql8 en wat eigen gemaakte classes dus helaas kan ik het niet met julie delen.

    Je kijkt gewoon hoeveel minuten er in een maand zitten en dat is dan je minimale totaal, dan kijk je hoeveel keer hij heeft geteld alles wat niet bestaat is weer een beetje minder.
    Maar het probleem is (wat ik niet zeker weet) is dat als de server 5 minuten down was je gelijk 10% minder hebt maar dit weet ik niet helemaal zeker
    Park The Hosting Manager - your friend in hosting software

  9. #54
    [TK] NOC Script
    blabla
    191 Berichten
    Ingeschreven
    30/08/04

    Locatie
    Nederland

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: nee
    KvK nummer: nvt
    Ondernemingsnummer: nvt

    aantal minuten in een maand van 30 dagen: 30*24*60 = 43200

    5 minuten down = 100 - ( (5*100) / 43200 ) = 99,988% uptime

  10. #55
    [TK] NOC Script
    geregistreerd gebruiker
    1.084 Berichten
    Ingeschreven
    17/02/03

    Locatie
    Hoorn

    Post Thanks / Like
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    5 Berichten zijn liked


    Naam: Raymond Karsten
    KvK nummer: 37109993
    Ondernemingsnummer: nvt

    Ik zal dit weekend wel even mijn versie delen. Ik moet hem eerst alleen even ombouwen want er zit van alles in gebouwt wat niet van toepassing voor de rest...

    Ik kijk trouwens alleen naar port 80 tegenwoordig en de load. Dat is het belangrijkste lijkt me...

  11. #56
    [TK] NOC Script
    Modder etend in tutsectie
    699 Berichten
    Ingeschreven
    01/02/06

    Locatie
    Hoogland

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: Ja
    KvK nummer: 32110066
    Ondernemingsnummer: nvt

    uptime kan je toch ook gewoon berekenen aan de hand van het aantal gefaalde metingen?

    Je moet immers de uptime berekenen, niet de downtime, en dat kan al vanaf meting 1.

  12. #57
    [TK] NOC Script
    Deactro
    1.772 Berichten
    Ingeschreven
    04/11/04

    Locatie
    Tiel

    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    0 Berichten zijn liked


    Registrar SIDN: Ja
    KvK nummer: 11051476
    Ondernemingsnummer: nvt

    Citaat Oorspronkelijk geplaatst door RayManZ
    Ik zal dit weekend wel even mijn versie delen. Ik moet hem eerst alleen even ombouwen want er zit van alles in gebouwt wat niet van toepassing voor de rest...

    Ik kijk trouwens alleen naar port 80 tegenwoordig en de load. Dat is het belangrijkste lijkt me...
    Mwah aangezien mySQL toch nog af en toe wel eens op zn gat wil gaan houd ik die liever ook in de gaten. En de SMTP server ook... Zijn vaak kleine dingen om te fixen, maar grote punten voor klanten. Websites waarvan mySQL down is is heel groot irritatiepunt en meestal op te lossen door simpele restart.

  13. #58
    [TK] NOC Script
    geregistreerd gebruiker
    1.084 Berichten
    Ingeschreven
    17/02/03

    Locatie
    Hoorn

    Post Thanks / Like
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    5 Berichten zijn liked


    Naam: Raymond Karsten
    KvK nummer: 37109993
    Ondernemingsnummer: nvt

    ja maar het nadeel is alleen als je op port 3306 controleert dat je niet merkt als hij is vast gelopen... Dit heb ik ook al eens gehad. Dan moet je op die server een eigen script zette en die een query laten uitvoeren. Als deze dan mislukt een email verzenden naar jezelf... Dit is denk ik betrouwbaarder.

  14. #59
    [TK] NOC Script
    Sebastiaan Stok
    2.468 Berichten
    Ingeschreven
    20/12/04

    Locatie
    Rotterdam

    Post Thanks / Like
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)
    86 Berichten zijn liked


    Naam: Sebastiaan Stok

    En wat als je dat email adres uit de database moet halen

    SMTP kan volgens mij weinig mee fout gaan tenzij je hem kopeld aan Mysql
    Ik heb op mijn test server de SMTP nu aan Postgresql gekopeld, nu nog op de productie server doorvoeren.

    Voor totaale uptime kan je de ping(UDP) port moniteren.
    Park The Hosting Manager - your friend in hosting software

  15. #60
    [TK] NOC Script
    geregistreerd gebruiker
    1.084 Berichten
    Ingeschreven
    17/02/03

    Locatie
    Hoorn

    Post Thanks / Like
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    5 Berichten zijn liked


    Naam: Raymond Karsten
    KvK nummer: 37109993
    Ondernemingsnummer: nvt

    Citaat Oorspronkelijk geplaatst door Rollerscapes
    En wat als je dat email adres uit de database moet halen
    Dan ben je een domme programmeur

Pagina 4 van de 5 Eerste ... 2 3 4 5 LaatsteLaatste

Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2026 Webhostingtalk.nl.
Web Statistics