> /var/log/ppp-usage // #----------------------- /etc/ppp/ip-down ----------------------------------- // // Make sure, online.php can access this file (e.g. chmod 644) // // // // Version: 0.5 - 18.02.2003 // // Copyrighted by GPL, Author: Claas Langbehn // Please sent me your patches etc. // // You cen get this script at: http://www.rootdir.de/online/ // // Changes by Koala [18.02.2003] // - is the logfile not readable, print a error message // - any small formating errors fixed (php- and html-code) // - undefined variables fixed // - adaptations for "register_globals = off" // //----------------------------------------------------------------------------------- // settings //----------------------------------------------------------------------------------- $ppp="ppp0"; $title="$ppp link Statistik"; $logfile="/var/log/ppp-usage"; //----------------------------------------------------------------------------------- // there is nothing to edit below this line //----------------------------------------------------------------------------------- if (isset($_GET['monat'])) { $monat = $_GET['monat']; } // function to print the connect-time in dd:hh:mm:ss-format function zeitberechnung ( $secs ) { $tage = intval($secs/86400); $secs = $secs-$tage*86400; $std = intval($secs/3600); $secs = $secs-$std*3600; $min = intval($secs/60); $secs = $secs-$min*60; printf ("%02d:%02d:%02d:%02d", $tage, $std, $min, $secs); } function show_connection( $logfile,$monat ) { // read logfile, calculate and display information $zeit = $rcvd = $sent = $verb = 0; $olddat = ''; $anz = 1; if (!$handle = @fopen($logfile, 'r')) { echo 'Konnte die Logdatei nicht lesen. Überprüfe die Zugriffsrechte.'; return false; } // $handle = fopen ($logfile,"r"); while (!feof($handle)) { if(!isset($monat) || ($monat == '')) { // echo($monat); $zeile = chop(fgets($handle, 80)); $tmp = split(" ",$zeile); // Felder: Datum Zeit connected[s] sent received $dat = substr($tmp[0],3,7); if ($olddat != $dat and $olddat != '') { $lrcvd = number_format($rcvd/1024/1024,2,'.',' '); $lsent = number_format($sent/1024/1024,2,'.',' '); $ltraf = number_format(($sent+$rcvd)/1024/1024,2,'.',' '); echo ' '.$olddat.' '.$verb.' '; zeitberechnung($zeit); echo ' '.$lsent.' MB '.$lrcvd.' MB '.$ltraf.' MB '."\n"; $zeit = $rcvd = $sent = $verb = 0; } // if ($olddat != $dat and $olddat != '') if ($tmp[0] != '') { $zeit = $zeit+$tmp[2]; $sent = $sent+$tmp[3]; $rcvd = $rcvd+$tmp[4]; } // if (count($tmp) > 0) $verb++; $olddat = $dat; } else { // Felder: Datum Zeit connected[s] sent received $zeile = chop(fgets($handle, 80)); $tmp = split(" ",$zeile); if (count($tmp) > 1) { $dat = substr($tmp[0],3,7); if ($dat == $monat) { $lrcvd = number_format($tmp[4]/1024/1024,2,'.',' '); $lsent = number_format($tmp[3]/1024/1024,2,'.',' '); $ltraf = number_format(($tmp[3]+$tmp[4])/1024/1024,2,'.',' '); echo ''.$anz.''; zeitberechnung($tmp[2]); echo ''.$lsent.' MB'.$lrcvd.' MB'.$ltraf.' MB'."\n"; $anz++; $zeit = $rcvd = $sent = $verb = 0; } // if($dat == $monat) } // if (count($tmp) > 0) } // if ($olddat != $dat) } // while fclose($handle); } function print_current($ppp) { // read, calculate and display information about the current connection if (!$handle = @fopen('/proc/net/dev', 'r')) { echo 'Konnte /proc/net/dev nicht lesen. Überprüfe die Zugriffsrechte.'; return false; } // $handle=fopen ("/proc/net/dev","r"); while (!feof($handle)) { $zeile = ereg_replace(":"," ",trim(fgets($handle, 400))); $zeile = ereg_replace("[[:space:]]+"," ",$zeile); $tmp = split(" ",$zeile); // Felder: Datum Zeit connected[s] sent received if ($tmp[0] == $ppp) { $lrcvd = number_format($tmp[1]/1024/1024,2,'.',' '); $lsent = number_format($tmp[9]/1024/1024,2,'.',' '); $ltraf = number_format(($tmp[1]+$tmp[9])/1024/1024,2,'.',' '); print 'Aktuelle Verbindung:'.$lsent.' MB'.$lrcvd.' MB'.$ltraf.' MB'."\n"; $zeit = $rcvd = $sent = $verb = 0; } // if ($tmp[0] == $ppp) } // while (!feof($handle)) fclose($handle); } ?> <? print($title); ?>
'; show_connection($logfile,''); print_current($ppp); } else { print ' '; show_connection($logfile,$monat); print ''."\n"; } // if (!isset($monat) || ($monat == '')) ?>
month connects online-time data sent data received transfered volume
# Zeitdauer data sent data received transfered Volume
Zurück