Hi,
how can i make a comma seperated output summary.
i attached the sample log file.
I have to capture these data in the log file.
Arcotid
Time Stamp, Username, Success, Failure, Error Code, Error Message
In the log snippet the userID can be found in-
Code
Arcot Native Server: recvd AA_BIN_MSG_VER_CHG
Cert Subject String....:[CN=01095848;O=MLS; UserID=012345; CardName=ARCARD]
Success and failure are like this-
Code
ArcotID Auth SUCCESS (serial Number [e93b])
Auth fail due to signature verification.Serial Number [11872](This is error message also)
Code
error code is -
Authentication mechanism returned [3], here 3 is error code and for success error code is always 0.
Formatting and printing in csv format is the part i am unaware,so i require your help in this.I need to do this for all authentication methods so if i get help in one i will be able to do it for rest.
Thanks
NT
Use the perl string functions to parse the elements to log, then just use a print statement to add the rest.
print OUT $id . "," . $ele1 . "," . $ele2 . "," . $ele3
The work is in the parsing, the output is just tedious...
namishtiwari,
please show us what you have tried so far.
#!/usr/bin/perl
print "Hello, World...\n";
my $logFile = $ARGV[0];
die "usage: $0 <logFile>" unless $logFile;
die "Logfile $logFile doesn't exist" unless -f "$logFile";
open(my $log, "<", $logFile) or die "Can't open $logFile for reading.";
print "Processing file $logFile...\n";
#my $authenticates = {};
my $n = 0;
my $Time_Stamp ;
my $User_Name;
my $Success;
my $Failure;
my $ErrorCode;
my $ErrorMsg;
while(my $line = <$log>) {
$n++;
$line =~ tr/\r\n//d;
if ($line =~ /^(.*)INFO:.*recvd AA_BIN_MSG_GET_WLT/) {
$Time_Stamp = $1;
while ( $line = <$log> ) {
if ($line =~ /recvd AA_BIN_MSG_VER_CHG$/) {
while ( $line = <$log>) {
if ($line =~ /Cert.*UserID=(\d+)/) {
$User_Name = $1 ? $1 : "NULL" ;
}
}
while ( $line = <$log> ) {
if ($line =~ /ArcotID Auth SUCCESS/) {
$Success = "Success";
}
}
while ( $line = <$log> ) {
if ($line =~ /Auth fail due to signature verification/) {
$Failure = "Failure";
}
}
while ( $line = <$log> ) {
if ($line =~ /Authentication mechanism returned \[(\d+)\]/) {
$ErrorCode = $1;
}
}
while ( $line = <$log>) {
if ($line =~ /(Auth fail due to signature verification.)/) {
$ErrorMsg = $1 ? $1 : "Null";
}
}
}print "$Time_Stamp , $User_Name , $Success , $Failure , $ErrorCode , $ErrorMsg \n";
}
}
}
The Log File snippet is like this--
Native Server: recvd AA_BIN_MSG_GET_WLT
Fri May 29 18:31:53.467 2009 Morocco Standard Time INFO: pid 3216 tid 2672: 17: 132357: ArAuthFrameworkImpl::doAuth::11:132357:: Authentication mechanism returned [1] for AuthIdentity [;ARCARD]
Fri May 29 18:31:53.467 2009 Morocco Standard Time INFO: pid 3216 tid 2672: 170: 132357: Handle_NSPAdvice:: Handling NSPAdvice for mechanism [4]
Fri May 29 18:31:53.467 2009 Morocco Standard Time INFO: pid 3216 tid 2672: 17: 132357: ArAuthFrameworkImpl::doPostAuth::11:132357:: Authentication mechanism returned [1] for AuthIdentity [01302904]
Fri May 29 18:31:53.482 2009 Morocco Standard Time INFO: pid 3216 tid 2672: 60: 132357: Sending Continue with challenge
Fri May 29 18:31:53.482 2009 Morocco Standard Time INFO: pid 3216 tid 2672: 61: 132357: Packet being sent
Fri May 29 18:31:53.482 2009 Morocco Standard Time INFO: pid 3216 tid 2672: 60: 0: Packet Sent (MsgType:110, Size: 1564 Bytes).
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 60: 0: Packet Received (MsgType:109, Size: 1463 Bytes).
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 60: 0: Locale Name[en], Locale ID[1]
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 0: 132358: Message: ArAuthBinaryAuthRequestMgr::setSecurityInfo: security_info_offset [0] is invalid. Assuming security info not available.
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 17: 132358: Using session identifier [11:132358]
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 17: 132358: ArAuthFrameworkImpl::doPreAuth::11:132358:: Authentication mechanism returned [0] for AuthIdentity []
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 170: 132358: Arcot Native Server: recvd AA_BIN_MSG_VER_CHG
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 170: 132358: Cert Subject String....:[CN=01302904;O=MLS; UserID=0123456; CardName=ARCARD]
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 170: 132358: Cert issuer............:[]
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 170: 132358: Cert serial String.....:[e93b]
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 170: 132358: ArcotId Certificate received with signature have ArcotExtension. Cert issuer=CN=
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 170: 132358: ArcotID Auth SUCCESS (serial Number [e93b])
For Fail the line is --
Auth fail due to signature verification.Serial Number [11872]
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 170: 132358: Session tracker Id associated with verify signed challenge[11:132351]
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 17: 132358: ArAuthFrameworkImpl::doAuth::11:132351:: Authentication mechanism returned [0] for AuthIdentity []
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 170: 132358: Handle_NSPAdvice:: Handling NSPAdvice for mechanism [4]
Fri May 29 18:31:53.498 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 170: 132358: Handle_NSPAdvice::NSP Action :[NSP_RESET]
Fri May 29 18:31:53.514 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 170: 132358: NSP Update Query is based on Serial Number
Fri May 29 18:31:53.514 2009 Morocco Standard Time INFO: pid 3216 tid 2888: 17: 132358: ArAuthFrameworkImpl::doPostAuth::11:132351:: Authentication mechanism returned [0] for AuthIdentity [01302904]
The formating is issue for me. Please give your suggestions in this.