#!/usr/bin/perl # FTP-Statistiken pro User # --------------------------------------------- # # Autor : B. Isenbuegel / bjoern(at)b-i-services.de # Version : 1.0 # Datum : 20.02.2003 # Umgebung: Hostsharing Server # Lizenz : GPL2 # # Auslesen des FTP Logfiles im wu-ftp Format mit Ausgabe # einer Userliste und der Menge an übertragenen Daten. # # History: # -------- # # 1.00 Is Erste Version # # # Aufruf: # ------- # ftp-traffic.pl LOGFILE # # Beispiel: ftp-traffic.pl ~/var/ftp.log # # # Installation: # ------------- # # Datei in gewünschtes Verzeichnis kopieren. Datei # executable chmoden (z.b. chmod 700 ftp-traffic.pl. # Fertig. ;) # # ---------------------------------------------- $ftpfile = $ARGV[0]; open (FIN, $ftpfile) || die "Fehler! Konnte Log Datei nicht öffnen! Bitte Parameter prüfen."; @ftpLine=qw (Day Month Mon_Day Time Year Transfer_Time Host File_Size File_Name Transfer_Type Special_Flag Direction Access_Mod Username Service_Name Auth_Metod User_Id); foreach () { @logdata{@ftpLine}=split(/\s+/,$_, scalar @ftpLine); $user = $logdata{Username}; $xfer = $logdata{File_Size}; $xfersum{$user} = $xfersum{$user} + $xfer ; } foreach $i (sort(keys %xfersum)) { printf( "User: %-15s - Traffic: %10d kbytes \n",$i,$xfersum{$i}/1024); }; close(FIN);