Here's what I have:
use strict;
use warnings;
my $logfile="log.txt";
my $error="DOWN";
my $warn="PROBLEM";
my $redbutton="\<img src\=\'default_files/perlredblink\.gif'>";
my $greenbutton="\<img src\=\'default_files/perlgreenblink\.gif'>";
my $yellowbutton="\<img src\=\'default_files/perlyellowblink\.gif'>";
open LOG, $logfile or die "Cannot open $logfile for read :$!";
my $button = $greenbutton;
while ($_ = <LOG>) {
if ($_ =~ /$error/i) {
$button = $redbutton;
print "<!--Content-type: text/html-->\n\n";
print "$button";
last;
}
elsif ($_ =~ /$warn/i) {
$button = $yellowbutton;
print "<!--Content-type: text/html-->\n\n";
print "$button";
last;
}
else {
print "<!--Content-type: text/html-->\n\n";
print "$button";
last;
}
}
close LOG;
Unfortunately, it does everything I want except go through the log line by line. How can I safely get this program to do that? Can you explain the alternative to using an array and/or a safe way to do this using an array?
Thanks!