no :)
its some java thing written by our development dept., i dont think theyd want to change it.. plus not really necessary either..
i followed suggestions here and here's the solution i came up with (used localtime instead of gmtime, gmtime() didnt return correct time)
use File::ReadBackwards;
use POSIX "strftime";
my $success;
my $items;
my $earliest = POSIX::strftime( "%Y-%m-%d %H:%M:%S", localtime( time()
+ - 30 * 60 ) );
$bw = File::ReadBackwards->new( '/var/log/mmsagent/mmsagent.log' ) or
die "can't read '/var/log/mmsagent/mmsagent.lo
+g' $!" ;
while ( defined( my $log_line = $bw->readline() ) ) {
last if $log_line lt $earliest;
if ($log_line =~ /STATUS = SUCCESS/) {
print $log_line;
}
}
works perfect, only prints out the relevant lines if they happened within half an hour ago. much thanks to everyone involved for their help! |