KB-1575 How to enable loggers for commonly seen Appian issues

Purpose

In certain troubleshooting scenarios, it may be necessary to enable DEBUG logging to retrieve additional information related to the issue observed. This article details how to enable DEBUG logging for some of the most commonly seen issues in Appian. The DEBUG statements will be logged to the application server log, unless configured otherwise.

Instructions

Warning: Enabling the DEBUG logs in an environment can lead to large log files and introduce potential performance degradation. Appian Technical Support advises to enable loggers on lower environments before doing so on production.

The steps to enable DEBUG logging are as follows:

  1. Open the appian_log4j.properties file. For Appian 18.3 and later, this file can be found in <APPIAN_HOME>/deployment/web.war/WEB-INF/resources. For Appian 18.2 and earlier, this file can be found in <APPIAN_HOME>/ear/suite.ear/resources.
  2. Find and uncomment the lines which apply to the particular issue you are trying to troubleshoot.
  3. Set the value of the line to DEBUG.
  4. Save and exit out of the file.

The steps to disable DEBUG logging are as follows:

  1. Return to the appian_log4j.properties file, and update the lines you modified so that the value is changed from DEBUG back to ERROR.
  2. Save the file and check the application server log to verify that the DEBUG and TRACE log entries are no longer being recorded.

When adding any of these loggers, check if they already exist in appian_log4j.properties, if they do, edit the existing line, otherwise add the lines to the appian_log4j.properties.

Loggers:

Appian Authentication, SAML, LDAP:

log4j.logger.com.appiancorp.security=DEBUG
log4j.logger.org.springframework.security=DEBUG
log4j.logger.org.opensaml.core.xml.util=TRACE

OpenID Connect User Authentication:

log4j.logger.com.appiancorp.security.auth.oidc=DEBUG

OAuth 2.0 Token Request Sequence:

log4j.logger.com.appiancorp.connectedsystems.http.oauth.HttpOAuthTokenRetriever=DEBUG
log4j.logger.com.appiancorp.connectedsystems.contracts.HttpOAuthTokenService=DEBUG
log4j.logger.com.appiancorp.connectedsystems.http.execution.strategies=DEBUG
log4j.logger.com.appiancorp.connectedsystems.http.oauth=DEBUG
log4j.logger.com.appiancorp.oauth.inbound=DEBUG

Application Import/Export:

log4j.logger.com.appiancorp.ix=DEBUG

Appian Health Check:

Note: Only applicable when using the Health Check Plugin. These loggers do not apply when Health Check is configured through the Admin Console.

log4j.logger.com.appiancorp.plugins.labs.BulkLogDownloadServlet=DEBUG
log4j.logger.com.appiancorp.tools.labs.analysis.util.LabsFileFilter=DEBUG
log4j.logger.com.appiancorp.healthcheck=DEBUG, HEALTH_CHECK

CDT Import/Export:

log4j.logger.com.appiancorp.type.external.teneoimpl.TeneoAnnotationsValidator=DEBUG
log4j.logger.com.appiancorp.type.external.teneoimpl.AppianHbSessionDataStore=DEBUG

Starting Processes by E-mail (email polling):

log4j.logger.com.appiancorp.messaging.MessagePublisherServiceImpl=DEBUG 
log4j.logger.com.appiancorp.process.execution.service.ProcessExecutionServiceFacade=DEBUG
log4j.logger.com.appiancorp.mdb=DEBUG

Process Models Exposed as Web Services:

log4j.logger.com.appiancorp.process.webservices.pmserver=DEBUG

Process to Process Messaging:

log4j.logger.com.appiancorp.messaging.MessagePublisherServiceImpl=DEBUG 
log4j.logger.com.appiancorp.process.execution.service.ProcessExecutionServiceFacade=DEBUG

Query Timeouts:

log4j.logger.org.hibernate.util.JDBCExceptionReporter=DEBUG

Query RDBMS Execution and Validation:

log4j.logger.com.appiancorp.process.runtime.activities.QueryRdbmsActivity=DEBUG
log4j.logger.com.appiancorp.process.runtime.activities.JdbcActivity=DEBUG

Capture SQL Statements:

log4j.logger.org.hibernate.SQL=DEBUG
log4j.logger.org.hibernate.type=TRACE

SAIL (unmask pink pop-up errors):

log4j.logger.com.appiancorp.rest.shared.AppianExceptionMapper=DEBUG
log4j.logger.com.appiancorp.core.expr.tree.Variable=DEBUG
log4j.logger.com.appiancorp.core.expr.Parse=DEBUG

Sending Emails with Send Email Smart Service:

log4j.logger.com.appiancorp.process.runtime.activities.SendEmailActivity=DEBUG
log4j.logger.com.appiancorp.ap2.mail=DEBUG

Call Web Service Smart Service:

log4j.logger.com.appiancorp.ws=DEBUG
log4j.logger.org.apache.axis2=DEBUG
log4j.logger.httpclient.wire.header=TRACE
log4j.logger.org.apache.commons.httpclient=TRACE

Importing Web Service CDTs:

log4j.logger.com.appiancorp.type.config.xsd.SchemaFactory=DEBUG

Background activity in Appian Engines:

log4j.logger.com.appiancorp.process.background.EngineWorkSpringContextListener=DEBUG
log4j.logger.com.appiancorp.process.background.EngineWorkControllerFactory=DEBUG
log4j.logger.com.appiancorp.process.background.EngineWorkControllerRunnable=DEBUG
log4j.logger.com.appiancorp.process.background.EngineWorkController=DEBUG

Details on CDT Transformation:

log4j.logger.com.appiancorp.type.xmlconversion=DEBUG 
log4j.logger.com.appiancorp.suiteapi.common.TypeConverter=DEBUG 
log4j.logger.com.appiancorp.core.data.converter=DEBUG

High Transformation Time When Processing the Results Received from the RDBMS:

log4j.logger.com.appian.perflogs.ecore-tv-conversion-trace=INFO, ECORE_TV_CONVERSION_PERF_TRACE
log4j.additivity.com.appian.perflogs.ecore-tv-conversion-trace=false
log4j.appender.ECORE_TV_CONVERSION_PERF_TRACE=com.appiancorp.common.logging.AppianFileAppender
log4j.appender.ECORE_TV_CONVERSION_PERF_TRACE.layout=com.appiancorp.type.data.ecore.EcoreToTvConversionPerfLogger$TraceLayout
log4j.appender.ECORE_TV_CONVERSION_PERF_TRACE.File=${AE_LOGS}/perflogs/perf_ecore_tv_conversion_trace.csv
log4j.appender.ECORE_TV_CONVERSION_PERF_TRACE.MaxFileSize=10MB
log4j.appender.ECORE_TV_CONVERSION_PERF_TRACE.MaxBackupIndex=1000
log4j.appender.ECORE_TV_CONVERSION_PERF_TRACE.encoding=UTF-8

Workpoller Issues:

log4j.logger.com.appiancorp.ra.workpoller=DEBUG, WORK_POLLER

Plugin Deployment: 

log4j.logger.com.appiancorp.process.admin=DEBUG

XSD Validation:

Note: This is used when record type validation fails or when deploying a plugin which constructs a CDT

log4j.logger.com.appiancorp.type.config.xsd=DEBUG

HTTP Connected Systems Request Execution:

Note: This is to check the request contents, how it was received, if response was received or timed out, etc.

log4j.logger.com.appiancorp.connectedsystems.http=DEBUG
log4j.logger.com.appiancorp.connectedsystems.http.execution.AppianHttpRequestExecutor=DEBUG

Connected Environments DevOps:

log4j.logger.com.appiancorp.connectedenvironments.logging.DevOpsInfrastructureHandlerAuditLogger=DEBUG
log4j.logger.com.appiancorp.designobjectdiffs.functions.application.DodConnEnvCallSystemRuleHandler=DEBUG

Compare & Deploy (Inspection phase): Compare

log4j.logger.com.appiancorp.designdeployments.handler.DplConnEnvAsyncInspectHandler=DEBUG
log4j.logger.com.appiancorp.designdeployments.handler.DplConnEnvInspectHandler=DEBUG

Salesforce connected Systems (returns error stacktrace returned by Salesforce):

log4j.logger.com.appiancorp.connectedsystems.salesforce=DEBUG

Webserver (returns data transferred to and from the servers when executing HTTP requests):

**these loggers are verbose, switch loggers to ERROR first before removing them from appian_log4j.properties file

log4j.logger.org.apache.http=DEBUG
log4j.logger.org.apache.http.wire=DEBUG

Affected Versions

This article applies to all versions of Appian.

Last Reviewed: April 2024

Related
Recommended