The UNIX and Linux Forums  


Go Back   UNIX och Linux Forum > Upp Forum > Shell-programmering och Skript
.
google unix.com



Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här.

Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
Tråd Thread Starter Forum Svar Senaste Inlägg
fel i produktionen av perl script namishtiwari Shell-programmering och Skript 2 06-15-2009 06:02
tr kommando ger fel output Usha Rao Shell-programmering och Skript 8 05-08-2009 08:13
Sortera kommando ger fel output Usha Rao Shell-programmering och Skript 8 04-07-2009 09:54
Perl Script fråga. Vad gör jag för fel? SkySmart Shell-programmering och Skript 14 03-19-2009 05:22
Skriva ut till en Savin - Storlek produktionsenhet fel h1timmboy AIX 2 02-28-2006 09:19

 
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Sök i denna tråd Rate Thread Visningslägen
  #1 (permalänk)  
Old 07-02-2009
namishtiwari namishtiwari is offline Forum Advisor  
Registered User
  
 

Join Date: Aug 2007
Ort: Bangalore
Inlägg: 377
fel produktionen i Perl-skript

Hej,

Här är min kodsnutt --


Kod:
#!/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;
						  }

					  }

				 
	   }
	  }
	  
}

Nedanstående utdraget är hämtat från logfile.I am hjälp medan slingor eftersom det finns många rader ovan och inbetween denna sträng.

Kod:
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

när jag körde programmet så här --

Kod:
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...

men i utdatafilen som temp12 är det inte att skriva ut något.
Vänligen föreslå vad som är fel här.
 

Komihåglista

Thread Tools Sök i denna tråd
Sök i denna tråd:

Avancerad sökning
Visningslägen Betygsätt denna tråd
Betygsätt denna tråd:

Utstationering Regler
Du får inte efter nya trådar
Du får inte efter svar
Du får inte skicka bilagor
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG] kod
HTML-koden är Av
Trackback är
Pingbacks är
Refbacks är




Alla tider är GMT -4. Klockan är nu 02:19.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Översättningar Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX och Linux Forum Innehållet upphovsrättsskyddat © 1993-2009. All Rights Reserved.Ad förvaltning RedTyger

Content Relevant webbadresser från vBSEO 3.2.0