如何通过WebSphere启用和收集DB2的跟踪?

时间:2014-10-11 18:15:50

标签: db2 websphere trace websphere-8

我想启用DB2的跟踪,我将通过WebSphere Application Server V8中的数据源访问。

3 个答案:

答案 0 :(得分:4)

在变量bootstrap.properties之后的服务器com.ibm.ws.logging.trace.specification=文件中添加以下代码:

版本6或更高版本:

 *=info:WAS.j2c=all:RRA=all:WAS.database=all:Transaction=all

版本5:

RRA=all=enabled:WAS.database=all=enabled:J2C=all=enabled

可以在IBM网站上找到更多信息:https://www-304.ibm.com/support/docview.wss?rs=71&uid=swg21196160#wasconnection

在您的数据源中,您还需要指定traceLevel属性。 例如:

<dataSource id="db2" jndiName="jdbc/db2" jdbcDriverRef="DB2Driver" >
    <properties.db2.jcc databaseName="myDB" traceLevel="-1"/>
</dataSource> 

答案 1 :(得分:2)

实际上,它取决于WebSphere版本和DB2的使用方式。我将尝试总结您的选项,有关详细信息,请查看底部的链接。

WebSphere Application Server(完整配置文件)

您有以下选择:

  1. 您可以通过WebSphere跟踪基础架构启用与数据库相关的一般跟踪 在WebSphere Web管理控制台中,转到Troubleshooting > Logging and tracing > serverName > Change log detail levels并在Runtime选项卡上(立即生效)或Configuration选项卡(重启后生效)将跟踪设置为*=info:WAS.database=all或更详细的*=info:WAS.j2c=all:RRA=all:WAS.database=all:Transaction=all。对于JDBC连接,此跟踪字符串是通用的,不仅适用于DB2。

  2. 您可以启用与DB2数据源跟踪相关的选项 在WebSphere Web管理控制台中,转到Resources > JDBC > Data sources > datasourceName > Custom properties。我是自定义属性设置跟踪相关属性,最重要的是:

    • traceLevel - 指定跟踪级别,由常量的按位组合确定:
  3. 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_META_CALLS=8192, 
    TRACE_DATASOURCE_CALLS=16384,
    TRACE_LARGE_OBJECT_CALLS=32768,
    TRACE_SYSTEM_MONITOR=131072,
    TRACE_TRACEPOINTS=262144, 
    TRACE_ALL=-1.
    
    • traceFile - 指定存储跟踪输出的文件

    WebSphere Liberty Profile

    在文件夹LIBERTY_HOME/usr/servers/server_name中创建bootstrap.properties,其中包含以下DB2变量(对于其他数据库,请检查底部的链接):

      

    com.ibm.ws.logging.trace.specification = * =审计=启用:com.ibm.ws.db2.logwriter =所有=允许

    通过系统属性

    指定跟踪

    使用从DriverManager获取的非托管连接时,无法通过数据源设置驱动程序跟踪属性。在这种情况下,您可以使用以下内容创建属性文件:

    db2.jcc.traceDirectory=/tmp/jcctrace
    db2.jcc.traceFile=trace
    db2.jcc.traceFileAppend=false
    db2.jcc.traceLevel=-1
    

    并指定它作为JVM系统属性的路径:

    -Ddb2.jcc.propertiesFile=pathToFile/fileName.properties
    

    有用的链接:

答案 2 :(得分:2)

版本6或更高版本:

*=info:WAS.j2c=all:RRA=all:WAS.database=all:Transaction=all

对于第5版:

RRA=all=enabled:WAS.database=all=enabled:J2C=all=enabled