![]() |
Hello and Welcome from United States to the UNIX and Linux Forums! Thank You for Visiting and Joining Our Global Community.
|
|
google unix.com
|
|||||||
| Forums | Register | Forum Rules | Links | Albums | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| Shell Programming and Scripting Post questions about KSH, CSH, SH, BASH, PERL, PHP, SED, AWK and OTHER shell scripts and shell scripting languages here. |
More UNIX and Linux Forum Topics You Might Find Helpful
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| error in output of perl script | namishtiwari | Shell Programming and Scripting | 2 | 06-15-2009 05:02 AM |
| tr command giving wrong output | usha rao | Shell Programming and Scripting | 8 | 05-08-2009 07:13 AM |
| Sort command giving wrong output | usha rao | Shell Programming and Scripting | 8 | 04-07-2009 08:54 AM |
| Perl Script issue. What am I doing wrong? | SkySmart | Shell Programming and Scripting | 14 | 03-19-2009 05:22 PM |
| Printing to a Savin - Size of output wrong | h1timmboy | AIX | 2 | 02-28-2006 09:19 AM |
![]() |
|
|
LinkBack | Thread Tools | Search this Thread | Rate Thread | Display Modes |
|
||||
|
wrong output in perl script
Hi,
Here is my piece of code-- Code:
#!/usr/bin/perl
my $Time_Stamp ;
my $User_Name;
my $Success;
my $Failure;
my $ErrorCode;
my $ErrorMsg;
my $logDir = $ARGV[0];
my $logPrefix = $ARGV[1];
die "usage: $0 <logDir> <logPrefix>" unless $logDir and $logPrefix;
die "Log dir $logDir doesn't exist" unless -d "$logDir";
for my $logFile ( glob("$logDir/${logPrefix}*") )
{
open($log, "<", $logFile) or die "Can't open $logFile for reading.";
open(FP_OUT,">temp12") or die "cannot create file temp1 for writing";
print "Processing file $logFile...\n";
OUTER: while( $line = <$log> )
{
chomp($line);
if ($line =~ /^(.*)INFO:.*QNA Step - AUTH IN PROGRESS/)
{
$Time_Stamp = $1;
printf FP_OUT "$Time_Stamp,";
QnA_search_for_sucess_or_failure() ;
#QnA_search_for_userID() ;
next OUTER;
}
}
}
sub QnA_search_for_sucess_or_failure
{
OUTER1: while ( $line = <$log> )
{
if ($line =~ /QNA Auth.*Success\s*and\s*Complete/)
{
printf FP_OUT "Success,";
print STDOUT "In Success,\n";
$ErrorMsg="null";
while ( $line = <$log> )
{
if ($line =~ /ArAuthFrameworkImpl::doPostAuth.*Authentication\s*mechanism\s*returned\s*\[(..*)\]\s*for\s*AuthIdentity\s*\[(..*)\]/)
{
print "$2\n";
printf FP_OUT "$2, ${1}, $ErrorMsg\n";
last OUTER1;
}
}
}
if($line =~ /Message.*QNA\s*Auth\s*Failed\((..*)\).*/)
{
$ErrorMsg=$1;
printf FP_OUT "Failure,";
print STDOUT "In Failure,\n";
while ( $line = <$log> )
{
if ($line =~ /ArAuthFrameworkImpl::doPostAuth.*Authentication\s*mechanism\s*returned\s*\[(..*)\]\s*for\s*AuthIdentity\s*\[(..*)\]/)
{
print "$2\n";
printf FP_OUT "$2, ${1}, $ErrorMsg\n";
last OUTER1;
}
}
}
}
}
Code:
Tue May 19 22:55:13.649 2009 Morocco Standard Time INFO: pid 2172 tid 3412: 160: 10083504: QNA Step - AUTH IN PROGRESS Tue May 19 22:55:13.649 2009 Morocco Standard Time INFO: pid 2172 tid 3412: 160: 10083504: QNA Auth - Success and Complete, Returning SUCCESS Tue May 19 22:55:13.665 2009 Morocco Standard Time INFO: pid 2172 tid 3412: 17: 10083504: ArAuthFrameworkImpl::doPostAuth::1:10083487:: Authentication mechanism returned [0] for AuthIdentity [12345] and for QnA failure the line comes like this in place of success line-- Tue May 19 22:56:21.962 2009 Morocco Standard Time INFO: pid 2172 tid 688: 160: 10083554: Err[115261735], Message: QNA Auth Failed(Invalid Credentials), Repeating the challenge and Returning FAILED Code:
C:\Perl Script>perl QnA_Authentication.pl . logfile.txt Processing file ./logfile.txt... In Success, 01503164 In Success, 01822755 In Failure, 01401058 Processing file ./logfile.txt.bak... Kindly suggest wha is wrong here. |
|
||||
|
Seems to be working fine
I used the log information as u had given above.
The o/p is Processing file xxxxxxxxxxxxxxxxxxxxxxxxxx/file.txt... In Success, 12345 In temp12, Tue May 19 22:55:13.649 2009 Morocco Standard Time ,Success,12345, 0, null is this what you expecting? |
| Sponsored Links | ||
|
|