JDBC trace configuration
If your application displays JDBC-related exception messages, activate the JDBC trace service. The resulting log text can help you identify the problem.
Turn on tracing for most database JDBC implementations through the administrative console; see the topic, Enabling trace at server startup for instructions.
- com.ibm.ws.database.logwriter Trace string for databases that use the GenericDataStoreHelper. You can also use this trace string for unsupported databases.
- com.ibm.ws.db2.logwriter Trace string for DB2® databases.
- com.ibm.ws.oracle.logwriter Trace string for Oracle databases.
- com.ibm.ws.derby.logwriter Trace string for Derby databases.
- com.ibm.ws.informix.logwriter Trace string for Informix® databases.
- com.ibm.ws.sqlserver.logwriter Trace string for Microsoft SQL Server databases.
- com.ibm.ws.sybase.logwriter Trace string for Sybase databases.
- Microsoft SQL Server JDBC driver
- DataDirect Connect for JDBC driver for MS SQL Server
Set trace for the previously mentioned JDBC drivers through data source custom properties. For example, use the spyAttributes custom property to enable JDBC trace for the DataDirect Connect for JDBC driver. Consult your driver documentation for details on the custom property that enables trace for your JDBC implementation.
Provider-specific configuration
- DB2 data sourcesThe custom properties for a data source with DB2 Data Server Driver for JDBC and SQLJ are:
- traceLevel
-
The possible values for traceLevel are:
- TRACE_NONE = 0
- TRACE_CONNECTION_CALLS = 1
- TRACE_STATEMENT_CALLS = 2
- TRACE_RESULT_SET_CALLS = 4
- TRACE_DRIVER_CONFIGURATION = 16
- TRACE_CONNECTS = 32
- TRACE_DRDA_FLOWS = 64
- TRACE_RESULT_SET_META_DATA = 128
- TRACE_PARAMETER_META_DATA = 256
- TRACE_DIAGNOSTICS = 512
- TRACE_SQLJ = 1024
- TRACE_XA_CALLS = 2048
- TRACE_META_CALLS = 8192
- TRACE_DATASOURCE_CALLS = 16384
- TRACE_LARGE_OBJECT_CALLS = 32768
- TRACE_SYSTEM_MONITOR = 131072
- TRACE_TRACEPOINTS = 262144
- TRACE_ALL = -1
Avoid trouble: Trace of Statement calls will expose the user data in sets to the PreparedStatement objects, and Trace of ResultSet calls will expose data returned in gets from the ResultSet objects. - traceFile
- Specifies to integrate the DB2 Data Server Driver for JDBC and SQLJ trace with the application
server's trace function:
- If you do not set the value, traces are integrated.If you use integrated trace, you can dynamically enable or disable trace by setting the following property in the application server's trace specification at run time:
WAS.database=all
- If you set the traceFile property to a valid path name for a file, then the Data Server Driver trace is written to the specified file regardless of the application server's trace specification.
- If you do not set the value, traces are integrated.
- traceFileAppend
- Specifies to append to or overwrite the file that is specified by the traceFile property:
- To append to the current file, set the property to true.
- To overwrite the current file, set the property to false.
Avoid trouble: If you change the values for traceLevel, traceFile, or traceFileAppend, then the you must restart the application server to instantiate new data source objects with the changed settings.
Additional resources
If the JDBC tracing service cannot help you isolate and fix your problem, consult the IBM® Support website for WebSphere® Application Server. Use the site search function to find current information on known problems and their resolutions. Locating the proper troubleshooting tip can save time that you might otherwise spend on opening and tracking a PMR.