还有一些经常使用到的日志,这里也列举一些比较有助于日常管理员使用的。
UDA详细日志
通常,我们想了解Cognos BI对请求的处理情况,特别是特定组件的详细工作情况,那么我们可以打开一些详细日志来得到。在这个例子中我们的关注点是CognosBI与数据库之间的交互细节,可以用来判断是否正确的sql被执行,或者数据库返回是否与报表展现相一致。
适用范围: CQM查询模式
判定标志: 报错中包含UDA的报错信息,例如uda-sql-xxxx
服务器: 分布式环境中所有承担报表服务(reporting)的服务器
是否需要重启: 不需要,但是需要等待60秒激活详细日志
详细日志输出目录: Cognos安装目录下/logs/UDA_Trace.log
步骤:
1. 在cognos安装目录下/configuration目录中将ipfUDAclientconfig.xml.sample改名为ipfclientconfig.xml
2. 等待60秒钟
3. 重现问题之后查找UDA_Trace.log文件
4. 结束后将刚才改掉的ipfclientconfig.xml还原为ipfUDAclientconfig.xml.sample
参考:http://www-01.ibm.com/support/docview.wss?uid=swg21620597
JDBC 详细日志
Cognos BI对数据层的查询最终会转化为SQL语句或者OLAP的mdx,那么我们可以通过查询转换的语句并且直接在数据层验证来对Cognos BI的性能有所了解。如果CognosBI报表运行速度大大低于所执行的数据库查询,那么应该详细排查CogonsBI的性能。
对于使用动态查询模式的请求可以通过其jdbc详细日志查看生成SQL。
适用范围: 动态查询模式请求
判定标志: 报错中包含XQE的报错信息,例如xqe-dat-xxxx
服务器: 分布式环境中所有承担报表服务(reporting)的服务器
是否需要重启: 重启服务Query Service
详细日志输出目录: Cognos安装目录下/logs/xqe中,文件名为xqelog*
步骤:
1. Cognos安装目录下/configuration文件中备份xqe.config.xml(针对10.1.1以及之前版本)或xqe.diagnosticlogging.xml
2. 在该xml配置文件中找到:
<component name="XQE">
… <eventGroup name="JDBC"/>
3. 为日志增加详细程度:<eventGroupname="JDBC" level="info"/>
4. 重启QueryService
5. 收集结束后使用备份文件替换回原xml文件即可
参考:http://www-01.ibm.com/support/docview.wss?uid=swg21579065
分派器相关详细日志
对于另外一个非常重要的组件——分配器,针对不同的目的可以生成不同的详细日志,这里仅仅是一个比较通用的方法
适用范围: 分派器报错
判定标志: 报错中包含DPR的报错信息,例如dpr-err-xxxx
服务器: 分布式环境中所有承担分派器的服务器
是否需要重启: 需要重启Cognos服务
详细日志输出目录: Cognos安装目录下/logs/pogo_.log
步骤:
1. 停止CognosBI服务
2. 在cognos安装目录下/webapps/p2pd/WEB-INF\下备份文件PogoLogKitConfig.xml为PogoLogKitConfig.xml.bak
3. 同一目录下重命名文件PogoLogKitConfig.FullDebug.xml为PogoLogKitConfig.xml
4. 启动CognosBI服务并等待问题重现
5. 当捕捉到错误之后同时对比cogserver.log与pogo_*.log
6. 当扑捉结束之后备份回PogoLogKitConfig.FullDebug.xml
参考:http://www-01.ibm.com/support/docview.wss?uid=swg21433194
Tips:如果服务部署在WebsphereApplication Server中那需要重新部署一遍
动态查询模式下的Oracle JDBCdriver详细日志
这种日志专门针对Oracle JDBCdriver,通常用来判定动态模式下Oracle数据源与Cognos BI服务器之间的交互问题。
适用范围: 动态查询模式请求、Oracle数据源
服务器: 分布式环境中所有承担CM的服务器
是否需要重启: 需要重启Cognos服务,重启Query Service
详细日志输出目录: Cognos安装目录下/bin或bin64中,文件名为orajdbc.log
Oracle在其客户端提供了一个用于debug的jdbc驱动,一般情况下在oracle安装目录下.../client/jdbc/lib中可以找到,或者也可以直接下载,例如文件名:ojdbc6_g.jar
步骤:
1. 停止Cognos服务
2. 将ojdbc6_g.jar拷贝至
cognos/webapps/p2pd/WEB-INF/lib以及
cognos/v5dataserver/lib
注意,如果上述两个位置存在驱动ojdbc6.jar,那么需要将其移除避免影响。
3. 创建一个如下文件(OracleLog.properties)
.level=ALL
oracle.jdbc.level=FINE
oracle.jdbc.handlers=java.util.logging.FileHandler
java.util.logging.FileHandler.level=FINE
java.util.logging.FileHandler.pattern = orajdbc.log
java.util.logging.FileHandler.count = 1
java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter
4. 将该文件(OracleLog.properties)拷贝至cognos安装目录下/bin以及cognos安装目录下/bin64文件夹中
5. 启动Cognos服务
6. 在IBMCognos Administration下的Dispatchersand services中找到Query Service,在“Additional JVM arguments for the query service (Requires QueryService restart)”下输入如下高级参数
-Doracle.jdbc.Trace=true -Djava.util.logging.config.file=OracleLog.properties
7. 重启QueryService,目标日志将出现在cognos/bin或cognos/bin64目录下,文件名为orajdbc.log
8. 收集结束后删除配置文件,并将ojdbc6.jar备份回来并且关闭Cognos Administration中QueryService高级参数设置
参考:http://www-01.ibm.com/support/docview.wss?uid=swg21661371
ODBC详细日志
对于使用ODBC作为连接方式的系统获得ODBC详细日志的方法
适用范围: ODBC类型数据源
服务器: 分布式环境中所有服务器
是否需要重启: 无需
详细日志输出目录: 配置在cogdmod.ini中
步骤:
1. 新建日志文件,例如c:\temp\ccogonsodbc.txt
2. 在cognos安装目录下/bin目录中备份cogdmod.ini
3. 编辑cogdmod.ini,将如下内容加到该文件末尾
[Trace]
Output=c:\temp\ccogonsodbc.txt
Flags=1111111111
4. 保存该文件并重现问题,详细日志将保存在c:\temp\ccogonsodbc.txt中
5. 收集结束后恢复cogdmod.ini文件即可
参考:http://www-01.ibm.com/support/docview.wss?uid=swg21370490