Support Article

Log4j error: could not create an Appender impacts prpcUtils.sh

SA-37488

Summary



PrpcUtils.sh not working properly with Pega 7.2.2 after upgrade from Pega 7.1.8.

Error Messages

log4j:ERROR Could not create an Appender. Reported error follows.
java.lang.ClassNotFoundException: com.pega.pegarules.priv.util.UpgradeAppender
log4j:ERROR Could not parse url with stream [file:/tmp/PegaInstallTemp-25-April-2017-15.24.38/load/WEB-INF/classes/prlogging.xml]
java.lang.NullPointerException

Steps to Reproduce

  1. Upgrade to Pega 7.2.2 from Pega 7.1.8.
  2. Run prpcUtils in Pega 7.2.2.


Root Cause



Few changes are required to prlogging file to resolve the issue.

Resolution

Comment below section in prlogging file and rerun prpcUtils.sh:

<appender name="UPGRADE" class="com.pega.pegarules.priv.util.UpgradeAppender">
<param name="FileNamePattern" value="'@CURR_DIR/logs/PRPC-RuleUpgradeActions-'yyyy-MMM-dd'.log'"/>
<layout class="com.pega.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d [%20.20t] [%10.10X{pegathread}] [%20.20X{app}] (%30.30c{3}) %-5p %X{stack} %X{userid} - %m%n"/>
</layout>
</appender>

<appender name="SIBLINGCLEANER" class="com.pega.pegarules.priv.util.UpgradeAppender">
<param name="FileNamePattern" value="'@CURR_DIR/logs/PRPC-SupersededSiblings-'yyyy-MMM-dd'.log'"/>
<layout class="com.pega.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d [%20.20t] [%10.10X{pegathread}] [%20.20X{app}] (%30.30c{3}) %-5p %X{stack} %X{userid} - %m%n"/>
</layout>
</appender>

<category name="com.pega.pegarules.deploy.internal.util.SyncRptGenerator" additivity="false">
<priority value="info"/>
<appender-ref ref="UPGRADE"/>
</category>

<category name="com.pega.pegarules.deploy.internal.archive.importer.synchronization.SiblingRulesCleanupSynchronizer" additivity="false">
<priority value="info"/>
<appender-ref ref="SIBLINGCLEANER"/>
<appender-ref ref="CONSOLE"/>
</category>

Note: The mentioned appenders are actually specific to the upgrade process and are not used when user is running the application. These will produce two new log files that capture specific information about superseded siblings and rule upgrade actions during the upgrade process.

For more details, refer below PDN article:

https://pdn.pega.com/community/product-support/question/prlogging-appender-upgrade-and-sibiling-cleaner-configuration

Published May 4, 2017 - Updated June 1, 2017

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.