Download | Plain Text | No Line Numbers
- #!/usr/bin/perl
-
- use strict;
-
- #-------------------------------------------------------------------------------
-
- our $logdir = "/var/log/apache2/confixx/domains/access";
- our %filecache = ();
- our %logcache = ();
- our $alarm = 10;
- our $errorlog = ($ARGV[0] eq 'errorlog') ? 1 : 0;
- $SIG{ALRM} = \&on_alarm;
-
- #-------------------------------------------------------------------------------
-
- sub on_alarm
- {
- #print "ALARM!!!", $/;
- {
- #print "writing log for ", $logfile, $/;
- {
- foreach my $logline (@{$logcache{$logfile}})
- {
- }
- }
- }
-
- }
-
- #-------------------------------------------------------------------------------
-
- while(my $line = <STDIN>)
- {
- #print "received log for ", $domain, $/;
-
- my $logfile;
- {
- my $logfilelink = $logdir . "/" . $domain;
- next
- if (!-l $logfilelink);
- $logfile =~ s/\/access_log/\/error_log/
- if ($errorlog);
- $filecache{$domain} = $logfile;
- }
- else
- {
- $logfile = $filecache{$domain};
- }
-
- #print "received log for ", $domain, " file=", $logfile, $/;
- #if (!$errorlog)
- #{
- # $log =~ s/^(\d+\.\d+\.\d+)\.\d+ /$1.0 /;
- #}
- #else
- #{
- # $log =~ s/\[client (\d+\.\d+\.\d+)\.\d+\]/\[client $1.0\]/;
- #}
- }
-
-