void logReport() {

		StringBuilder builder = new StringBuilder();

		builder.append(reportNonappliableTypes());
		builder.append(reportUnunsualThisPointerTypes());
		builder.append(reportUnunsualThisPointerUnderlyingTypes());
		builder.append(reportUnunsualMemberFunctionContainerTypes());
		builder.append(reportNonappliableSymbols());
		builder.append(reportNonNestableSymbols());
		builder.append(reportUnexpectedPublicSymbols());
		builder.append(reportUnexpectedGlobalSymbols());
		builder.append(reportEnumerateNarrowing());
		builder.append(reportSourceLineProcessing()); // can be removed once we can process

		if (builder.length() == 0) {
			return; // nothing reported
		}

		builder.insert(0, "===Begin PdbApplicatorMetrics Report===\n");
		builder.append("====End PdbApplicatorMetrics Report====\n");
		String text = builder.toString();

		Msg.info(this, text);
		PdbLog.message(text);
	}
Generate some post-processing metrics and write to log
Ghidra/Features/PDB/src/main/java/ghidra/app/util/pdb/pdbapplicator/PdbApplicatorMetrics.java