php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Verschiedene Hosts bzw. IPs testen


 
rossixx
17-09-2007, 15:14 
 
Kann man mit PHP ein Script schreiben, das verschiedene Host bzw. IP auf Verfügparkeit testen z.B. mit Ping xxx.xxx.xxx.xxx

Also das ich die Seite aufrufe und mir angezeigt wird, welche Hosts erreichbar sind ???

 
jahlives
17-09-2007, 15:21 
 
Wie vestehst du testen ? Geht es nur darum, ob die Hosts da sind, dann geht's am schnellsten mittels ping. Wenn du aber wissen willst ob auch der Web-oder Mailserver läuft, bleibt dir nix anderes übrig einen socket zum Host zu öffnen und eine Anfrage zu starten.

 
rossixx
17-09-2007, 15:35 
 
Genau das scheint mein Problem zu sein. Ich will rausfinden ob auf dem Server Apache läuft und ob meine MySQL am start ist, wenn ja dann ein OK auf der Testseite wenn nein eine E-Mail an mich.

Meine Idee ist, das ich so informiert werde, wenn mein Server ärger macht.

Gibt es ein Tutorial zu Sockets ????

 
lennart
17-09-2007, 15:48 
 
Original geschrieben von rossixx
und ob meine MySQL am start ist

lol

Original geschrieben von rossixx
Meine Idee ist, das ich so informiert werde, wenn mein Server ärger macht.


http://www.zabbix.org/
http://www.nagios.org/

Original geschrieben von rossixx
Gibt es ein Tutorial zu Sockets ????
10 Sekunden googlen liefert dir:
http://de.php.net/sockets
http://www.devshed.com/c/a/PHP/Socket-Programming-With-PHP/

 
jahlives
17-09-2007, 16:23 
 
... ob meine MySQL am start ist

Der Server (Apache/IIS etc ppt) kriegst du anhand der header raus, mit denen der Server auf einen Request reagiert. MySql wird nur dann funzen, wenn der MySql Server direkte Zugriffe aus dem Internet erlaubt (was viele Hoster nicht per default haben) --> in den meisten Fällen wird also die Prüfung auf MySql scheitern, ohne dass du danach weist ob der DB Server läuft oder ned...

 
rossixx
17-09-2007, 16:38 
 
nagios ist etwas zu dick aufgetragen. ich will ja nur einen check

ob ping geht
ob http geht

das wäre für den anfang genug. wenn das per php gehen würde.

 
Kropff
17-09-2007, 16:43 
 
exec ('ping...'); (http://www.google.de/search?hl=de&q=exec+ping+php&btnG=Google-Suche&meta=)
fsockopen (http://www.php-resource.de/handbuch/function.fsockopen.htm)

gruß
peter

 
jahlives
17-09-2007, 16:55 
 
ob ping geht
ob http geht

Also wenn HTTP geht, dann kannst du dir die ping-Prüfung schenken

 
Kropff
17-09-2007, 17:03 
 
Original geschrieben von jahlives
Also wenn HTTP geht, dann kannst du dir die ping-Prüfung schenken
doppelt gemoppelt hält besser :)

peter

 
unset
17-09-2007, 17:12 
 
Original geschrieben von rossixx
nagios ist etwas zu dick aufgetragen. ich will ja nur einen check
In der Zeit, die du bereits in diesen Thread investiert hast, hättest du dir das gewünschte auch mit Nagios aufsetzen können ;)

 
rossixx
17-09-2007, 17:20 
 
nee, das mit nagios hab ich nur bis zur installation geschafft. mir fehlt ein schritt für schritt anleitung.

in den anleitungen im netz konnte ich nicht viel anfangen. verschiedene systeme / versionen und dann sind die phade und dateien anders oder nicht vorhanden.

 
unset
17-09-2007, 17:25 
 
Musste halt entweder weiter suchen oder rumprobieren. Welches System verwendest du denn!?

 
tontechniker
17-09-2007, 17:26 
 
:google: (http://www.google.com/search?hl=de&q=server+monitoring&btnG=Suche&lr=)Entsprechende Onlinedienste sind wohl am einfachsten ...

 
rossixx
17-09-2007, 17:41 
 
suse 10.2

nagios 2.5

vielleicht bringt mich fruity weiter ???

 
rossixx
17-09-2007, 18:44 
 
$sys_config['logos_path'] = '/usr/local/groundwork/fruity/logos';

// Must be symlinked or a copy of the logos directory from nagios

nur jetzt ist die Frage, welchen phad muß ich da oben eingeben ???

ein logos directory gibt es bei mir nicht

 
rossixx
26-09-2007, 18:53 
 
//entfernten server kontakten
$ch = curl_init("http://www.mein_test_server.info/");
$fp = fopen("aaa_ergebnis.txt", "w");

//Session Optionen setzen und ausführen
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);

//Session beenden
curl_close($ch);
fclose($fp);



mit dem skript greife ich auf einen anderen server zu


da hab ich in die index.php, das hier abgelegt.

<?
$stats = @exec("uptime");
echo $stats;
$loadavg = @file("/proc/loadavg");
$loadavg = @explode(" ",$loadavg[0]);
$load = $loadavg[0];
echo $load ;
$last_line = @system('uptime', $retval);
?>



das funktioniert auch so weit, die daten landen auch in der angegebenen datei.

aber geht das auch mit rüchgabewerten ???

z.b.

wennn server down echo"tote hose";
oder echo"is running"

-archiv-

Alle Zeitangaben in WEZ +2. Es ist jetzt 08:38 Uhr.