common/tools/analysis/parse_yarp_files.pl
author MattD <mattd@symbian.org>
Thu, 30 Jul 2009 12:29:27 +0100
changeset 288 58affcc6c40e
parent 206 62976b2583f7
permissions -rw-r--r--
Yarp.pl - Added manual XML parsing. Memory leaks using XML::Simple cause perl to run out of memory when parsing a large raptor log.


my @asYarpFiles = ();
open(FILE, $ARGV[0]);
while ( <FILE> )
{
	if ( m/^[^,]*,[^,]*,([^,]*)/ )
	{
		my $sFile = $1;
		chomp $sFile;
#		print "$sFile\n";
		push(@asYarpFiles, $sFile);
	}
}
close(FILE);
my $nYarpFiles = scalar(@asYarpFiles);
#print "Found $nYarpFiles files to parse\n";

my $nTotalRecipeErrors = 0;
for my $nYarpFile (@asYarpFiles)
{
	my $nRecipeErrors = 0;
#	print "Parsing file $nYarpFile...\n";
	open(FILE, $nYarpFile);
	while ( <FILE> )
	{
		if ( m/^Raptor recipe failures:\s+(\d+)$/ )
		{
#			print "Raptor recipe failures: $1\n";
			$nRecipeErrors = $1;
		}
	}
	close(FILE);
#	print "Recipe errors in $nYarpFile: $nRecipeErrors\n";
	$nTotalRecipeErrors += $nRecipeErrors;
}
#print "Total recipe errors across all files: $nTotalRecipeErrors\n";

print "$nTotalRecipeErrors";