Discussion
TATA CONSULTANCY SERVICES
IN
Last activity: 4 Oct 2018 11:08 EDT
Do you know .. Popular Pega Classes/Loggers that helps in Troubleshooting Issues ? Check it out here-
Have you spent Hours & days of your time to Troubleshoot Issues ?
Here are some Pega Classes or Loggers that I (came across..) generally use to Troubleshoot Issues quickly. You would also have enabled DEBUG some or the other time for a PegaClass/Activity & if you feel after enabling DEBUG to that class/activity helped you in narrowing down the Root-Cause, please share it here.
Lets put all together & have a Nice Handy document which would help all of us.
Popular Pega Classes/Loggers - helps in Troubleshooting Issues | ||
Problem Description/Usage | Pega OOTB Classes/Loggers | Set Log Level |
To troubleshoot PegaCall CTI related issues | com.pega.pegacti | DEBUG |
com.pegarules.generated.pega_channelservices_utilities | DEBUG | |
To understand the rule resolution/Troubleshoot Rulenotfound exception issues | com.pega.pegarules.generation.internal.vtable.asm | DEBUG |
com.pega.pegarules.generation.internal.vtable.ruleres.VirtualTableResolver | DEBUG | |
com.pega.pegarules.generation.internal.vtable.VirtualTableImpl | DEBUG | |
To troubleshoot Integration-Connector related issues | Rule_Obj_Activity.InvokeAxis2.Rule_Connect_SOAP.Action | DEBUG |
com.pega.pegarules.integration.internal.ServiceHelper | DEBUG | |
com.pega.pegarules.integration.internal.util.SOAPUtils | DEBUG | |
To produce detailed output from an email listener | com.pega.pegarules.services.emaillistener | DEBUG |
To troubleshoot IAC issues, if there are issues with the pzPostData parameter | com.pega.pegarules.session.internal.engineinterface.service.HttpAPI | WARN |
Troubleshoot Agents | com.pega.pegarules.session.internal.async.Agent | DEBUG |
com.pega.pegarules.session.internal.async.BatchRequestorTask | DEBUG | |
com.pega.pegarules.session.internal.async.agent.QueueManagerImpl | DEBUG | |
com.pega.pegarules.session.internal.async.agent.QueueProcessor | DEBUG | |
To troubleshoot AES & Monitored Nodes Communication issues, enabling debug on AES Node | Rule_Obj_Activity.AlertCreateNode | DEBUG |
Rule_Obj_Activity.NodeCreate | DEBUG | |
Rule_Obj_Activity.ClusterCreate | DEBUG | |
Rule_Obj_Activity.ExecuteMBeanOperationNode | DEBUG | |
Rule_Obj_Activity.VersionInfoNode | DEBUG | |
Rule_Obj_Activity.parseAlertLineSOAP | DEBUG | |
Rule_Obj_Activity.parseAlertLine | DEBUG | |
com.pega.pegarules.services.ServiceHelper | DEBUG | |
com.pega.pegarules.authentication.Authentication | DEBUG |
**Moderation Team has archived post**
This post has been archived for educational purposes. Contents and links will no longer be updated. If you have the same/similar question, please write a new post.
-
Likes (1)
Tyler Stubbs -
Share this page Facebook Twitter LinkedIn Email Copying... Copied!
Pegasystems
US
Thanks Hari, that’s a great idea, having a list correlating keywords of trouble areas and suggested debug classes.
One thing I’ve found useful occasionally is being able to turn on the debug classes just before performing the operation I want to analyze, and then turn them right off again right after.
That is useful for situations where leaving those debug classes on longer floods the log file with lots of unwanted info.
A fairly easy way to see how to turn the classes on and off is to trace the set-logging-level landing page to capture the java it uses for setting the logging level for the class, and then copy that small piece of java into your own activity just before the operation you want to analyze, and a similar piece just after the operation to restore the class settings.
That trick becomes even more valuable when the number of classes involved is more than one, since changing the values of multiple classes takes a while using the landing page since only one class can be set at a time.
/Eric
TATA CONSULTANCY SERVICES
IN
Hi Eric,
Yes, I do agree to your point that the logger levels should be enabled only on need basis otherwise the Log-files size can grow eventually & can cause unnecessary issues.
Regarding the enabling the debug for multiple classes at a time, felt bit interesting by the information that you shared. I will try to make use of the java code that the set-logging-level landing page internally calls.
Coming back to the logger levels, please do share if you have come across any logger/Class which you have felt useful to enable debug & gives good information.
Thanks
Hari
Updated: 1 Apr 2015 13:29 EDT
Hi Hari,
I think this a great way to spread the word on how to gather additional debugging information! My team and I have come up with some additional loggers that we find helpful:
For BIX issues:
com.pega.pegarules.data.internal.access.ExtractImpl
Logging level = DEBUG
For understanding requestor lifecycle:
com.pega.TRACE.requestor_lifecycle
Logging level = DEBUG
A more specific logger for email listener:
com.pega.pegarules.integration.engine.internal.services.email.EmailListener
Logging level = DEBUG
Looking at the transport layer when looking at SOAP messages. (Replacement for TCPMon):
httpclient.wire.content
httpclient.wire.header
Logging level = DEBUG
Import issues:
com.pega.pegarules.deploy.external.util.ImportUtility
com.pega.pegarules.deploy.internal.util.ImportImpl
com.pega.pegarules.deploy.internal.inventory.SynchronizerImpl
Logging level = DEBUG
Java argument for adding debug for SSL:
-Djavax.net.debug=ssl
Turning on JDBC trace when running an ant script from command line (such as prpcUtils or Installation and Upgrade scripts):
For Unix:
export ANT_OPTS="-Doracle.jdbc.Trace=true -Djava.util.logging.config.file=myJDBCConfig.properties"
For Windows:
Hi Hari,
I think this a great way to spread the word on how to gather additional debugging information! My team and I have come up with some additional loggers that we find helpful:
For BIX issues:
com.pega.pegarules.data.internal.access.ExtractImpl
Logging level = DEBUG
For understanding requestor lifecycle:
com.pega.TRACE.requestor_lifecycle
Logging level = DEBUG
A more specific logger for email listener:
com.pega.pegarules.integration.engine.internal.services.email.EmailListener
Logging level = DEBUG
Looking at the transport layer when looking at SOAP messages. (Replacement for TCPMon):
httpclient.wire.content
httpclient.wire.header
Logging level = DEBUG
Import issues:
com.pega.pegarules.deploy.external.util.ImportUtility
com.pega.pegarules.deploy.internal.util.ImportImpl
com.pega.pegarules.deploy.internal.inventory.SynchronizerImpl
Logging level = DEBUG
Java argument for adding debug for SSL:
-Djavax.net.debug=ssl
Turning on JDBC trace when running an ant script from command line (such as prpcUtils or Installation and Upgrade scripts):
For Unix:
export ANT_OPTS="-Doracle.jdbc.Trace=true -Djava.util.logging.config.file=myJDBCConfig.properties"
For Windows:
set ANT_OPTS="-Doracle.jdbc.Trace=true -Djava.util.logging.config.file=myJDBCConfig.properties"
Adding debug to SOAP appenders, specific to AES:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="true">
….
<appender name="EXCEPTION-AES-SOAP" class="com.pega.pegarules.priv.util.SOAPAppenderPega">
<param name="EndPointURL" value="http://hostname:portnumber/prweb/PRSOAPServlet" />
<param name="Mode" value="exception" />
<param name="ExceptionsOnly" value="true" />
<param name="debug" value="true" />
<layout class="com.pega.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{GMT}*%Y{instance_id}*%t*%c*%X{RequestorId}*%X{pegathread}*%X{app}*%X{userid}*%X{stack}*%m%n"/>
</layout>
</appender>
<appender name="ALERT-AES-SOAP" class="com.pega.pegarules.priv.util.SOAPAppenderPega">
<param name="EndPointURL" value="http://hostname:portnumber/prweb/PRSOAPServlet" />
<param name="Mode" value="ALERT" />
<param name="debug" value="true" />
<layout class="com.pega.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%m%n" />
</layout>
</appender>
-
Souvik Aich
TATA CONSULTANCY SERVICES
IN
Thanks Nicolas !! Have updated the list of loggers which you have shared. Really appreciate you for taking time & sharing that here.
JP Morgan Chase
US
Can you please share it here, if you have got the piece of java code to on/off debug
TATA CONSULTANCY SERVICES
IN
Here is the link to the Document that I had published (which is the compilation of few useful Pega OOTB Classes) after our meshies shared.
Compilation of Popular Pega OOTB Classes/Loggers that helps in Troubleshooting Issues
Please keep sharing the Pega OOTB Classes/Loggers which you would have felt useful & are not present in the list which I published.
Thanks
Hari
BNY Mellon
US
great work, thanks for putting a document on this!
As a customer I don't have ability to update Product Support documents though.
Updated: 21 Apr 2015 2:46 EDT
Pegasystems Inc.
IN
From ML7, one can debug monitored nodes sending alerts, exceptions and health send to AES by simply enabling debug level for class 'com.pega.pegarules.priv.util.SOAPAppenderPega' without having to modify prlogging.
2015-04-07 14:20:59,256 [ispatcher-Thread-120] [TABTHREAD1] [ ] [ PegaRULES:07.10] ( priv.util.SOAPAppenderPega) DEBUG Proprietary information hidden| Proprietary information hidden[email protected] - AES-ALERT-MSG : SOAPAppenderPega.sendEvent()...Event: 2015-04-07 08:50:59,255 GMT*7*PEGA0037*2026*400*c4dfc433225b4627...
2015-04-07 14:20:59,337 [ispatcher-Thread-120] [TABTHREAD1] [ ] [ PegaRULES:07.10] ( priv.util.SOAPAppenderPega) DEBUG Proprietary information hidden| Proprietary information hidden [email protected] - AES-ALERT-MSG : SOAPAppenderPega.sendEvent()... (complete) Event:2015-04-07 08:50:59,255 GMT*7*PEGA0037*2026*400*c4dfc433225b4627...
TATA CONSULTANCY SERVICES
IN
Hi Mounica, Thanks for sharing. Mentioned class can be added to the Document - Compilation of Popular Pega OOTB Classes/Loggers that helps in Troubleshooting Issues
Pegasystems Inc.
AU
Hi Hari,
I use the following logger for incoming SOAP requests .
"com.pega.pegarules.integration.engine.internal.services.soap.SOAPService"
Thanks,
Jay.
TATA CONSULTANCY SERVICES
IN
Good one Jay !!
Will make sure to get that added to the list.
Thanks
Hari
Pegasystems Inc.
US
Hari,
The REST connector equivalent to the SOAP ones you posted is
Rule_Obj_Activity.pyInvokeRESTConnector.Rule_Connect_REST.Action
We have many customers using REST Connectors now, so this is a good one to have.
- Jeff
TATA CONSULTANCY SERVICES
IN
Thanks Jeff for sharing this. Yeah, in our Production application also we use a REST Connector. It should helpful for me as well .
Pegasystems Inc.
US
Hari,
Such consolidated list comes very handy when in need Thank you for putting this together.
We used following loggers to troubleshoot SAML issues on prpc 7.1.6 and 7.1.7
Activity:
pySAMLWebSSOAuthenticationActivity
Classes:
com.pega.pegarules.integration.engine.internal.util.PRSAMLv2Utils
com.pega.pegarules.integration.engine.internal.sso.saml.SAMLv2ResponseSSOProfileValidator
com.pega.pegarules.integration.engine.internal.sso.saml.SAMLv2ResponseProtocolValidator
TATA CONSULTANCY SERVICES
IN
Thanks Anil for sharing this. Will add these to the list.
PEGA
IN
Hi Hari,
One more logger,
For TransactionID mismatch errors:
com.pega.pegarules.session.internal.mgmt.base.ThreadUITransaction
TATA CONSULTANCY SERVICES
IN
Thanks Satish for sharing this. Document will be updated with the mentioned logger.
-
Nagaraju kollipara
Hcl America
US
Good one Hari. Surprised the POST was'nt updated for quite a while now.
Loggers for Declare Index issues
com.pega.pegarules.data.internal.access.Indexer
com.pega.pegarules.data.internal.access.DeferredOperationsImpl