sub per_user_qna_detail { for($index=0;$index<@records;$index++) { if($records[$index] =~ m/^(.*)\s*Morocco.*Entering\s*QnAModule::authenticate/) { printf "INSIDE per_user_qna_detail on LINE NO $index\n"; $Time_Stamp = $1; search_for_username_and_no_of_questions(); end_block(); } } } sub search_for_username_and_no_of_questions { printf "ENTERING INSIDE search_for_username_and_no_of_questions ON LINENO=$index\n"; for(;$index<@records;$index++) { #printf "LINENO=$index\n"; if ($records[$index] =~ /userName\s+:\[(..*)\]/) { $User_Name = $1; $User_Name =~ s/\s+//g; $User_Name= "'" . $User_Name . "'"; print "User_Name = $User_Name\n"; for(;$index<@records;$index++) { if ($records[$index] =~ /Set\s+of\s+questions\(bitmap\)\s+selected\s+:\s+(\d+)/) { print "Inside set of questions bitmap selected\n"; $Bitmap_Number_For_Questions = $1; printf "PRASANNA:$User_Name\n"; $no_of_questions{$User_Name}=$Bitmap_Number_For_Questions; print "$Bitmap_Number_For_Questions is no of questions for $User_Name\n"; $timestamp{$User_Name}=$Time_Stamp; print "$Time_Stamp is time stamp for $User_Name\n"; printf "EXITING INSIDE search_for_username_and_no_of_questions ON LINENO=$index\n"; return 0; } } } } printf "EXITING INSIDE search_for_username_and_no_of_questions ON LINENO=$index\n"; }