I am new to perl and am trying to write a script which will search the system event viewer for 'disk' events, log the amount of alerts and write the message into a log file.
I have called the Win32::eventviewer module, and when i run this programme i get
Goto undefined subroutine &AutoLoader::AUTOLOAD at C:/Perl/lib/Win32/EventLog.pm line 50, <MYFILE> line 3.
I'm a bit lost at what is happening. the code is below:
calling the module:
segment of code using event viewer:use Win32::EventLog; # Module to access event Log for step 3
Eventually will print out the value of $i as well in a separate summary file as well as list all disk events in the eventviewer.log Any help on what im doing wrong would be appreciated - i have read the CPAN pages and anything else i can on this module but still at a lost. Thank you in advanced.$handle= New Win32::EventLog("System"); $i = 0; #sets up the counter for amount of alerts $count = 1; while($handle->read((EVENTLOG_SEEK_READ|EVENTLOG_FORWARDS_READ,$count, +$event))){ if($event->{source} eq 'disk'){ Win32::EventLog::GetMessageText($event); $i = $i +1; open(EVENT,'>Eventviewer.log') or die 'unable to open file'; print EVENT $event->{Message}."\n"; } else{ open(EVENT,'>Eventviewer.log') or die 'unable to open file'; print EVENT "No Disk errors Found"; } $count=$count+1; } $handle->Close
In reply to Reading Event Viewer by jonsey80
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |