Notes:
DB2 provides the db2trc command to trace DB2 events. The db2trc command collects
event information, dumps the trace to a file, and formats the trace dump file.
db2trc should be performed with the assistance of your IBM Support Center. SYSADM,
SYSCTRL, or SYSMAINT authority is needed to run db2trc.
Running the db2trc command:
• Start the trace.
db2trc on
• Perform the action you wish to trace.
• Dump the trace to a file. If no directory path is specified, then the trace file will be written
to the current directory.
db2trc dump trace.bin
• Turn the trace off.
db2trc off
• Format the dump trace file. The fmt option lists each event chronologically. The flw
option sorts each event by process or thread. If the output is not redirected, then the
output will go to the terminal.
db2trc fmt trace.bin trace.format
db2trc flw trace.bin trace.flow
• Send the formatted trace to the IBM Support Center.
=========================== db2trc 命令的常用顺序示例:
db2trc on -l 8M
db2trc clr
db2trc dump db2trc.dmp
db2trc off
db2trc flw db2trc.dmp .flw
db2trc fmt db2trc.dmp .fmt
db2trc fmt -c db2trc.dmp .fmtc
最后把最后三个文件发送给IBM支持人员。
==============================更详细的步骤说明:
使用db2trc的步骤可分为大步:
启用跟踪跟踪问题
转储db2跟踪
格式化db2跟踪
====================================================具体步骤:
=======================开启trace跟踪问题,并存入磁盘:
但是,如果跟踪规模较大的操作或者同时在进行大量工作,那么可能需要较大的跟踪缓冲区。
在大多数平台上,跟踪可按如上所述随时打开并工作。但是,有些特定情况需要注意:
在多数据库分区系统上,必须对每个物理(相对于逻辑)数据库分区运行跟踪。(和db2support情况一样,需要在物理分区上执行,因为会收集操作系统及硬件信息)
在 HP-UX 上,Linux® 和 Solaris 平台上,如果在启动实例后关闭跟踪,那么不管指定大小如何,下一次启动跟踪时都会使用非常小的缓冲区。例如,昨天您通过使用 db2trc on -l 8m 启动了跟踪,然后收集了跟踪信息,然后停止了跟踪(db2trc off)。今天您希望在不关闭并重新启动实例的情况下,运行跟踪并将内存缓冲区设置为 32 MB(db2trc on -l 32m)。您会发现在此情况下,跟踪仅获得很小的缓冲区。为了在这些平台上有效地运行跟踪,应在启动实例前以所需大小缓冲区启动跟踪,并在以后必要时“清除”缓冲区。
<----------------------执行要捕捉错误的命令或操作--------------------------->
=======================格式化db2跟踪:
说明:
(1)
前两个命令都要执行。.flw文件中主要是函数流程。.fmt文件较.flw文件更为详细,会打印相应的数据。他们之间的行数是相互对应的。一般都是二者结合起来看。
(2)
最后一个命令db2trc fmt -c trace.dmp trace.fmtc的作用: Format communications buffers. 应该可以不需要。
(3)
Trace wrapped : YES
如果此输出指示“合并跟踪”为“YES”,那么表示跟踪缓冲区不够大,无法包含跟踪时间段收集的所有信息。根据情况,合并跟踪也许是可行的。如果您关心的是最新信息(除非指定了 -i 选项,否则这是缺省情况下保留的信息)
,那么跟踪文件中的内容可能已经足够。但是,如果您关心的是跟踪时间段开始时发生的情况,或者关心发生的所有情况,那么您可能想要使用更大的跟踪缓冲区重做该操作。
(4)
将二进制文件格式化为可读文本文件时,有一些选项可用。例如,可使用 db2trc fmt -xml trace.dmp trace.fmt 转换二进制数据并以 XML 可解析格式输出结果。其他选项显示在跟踪命令(db2trc)的详细描述中。
要注意的另一件事是:在 Linux® 和 UNIX® 操作系统上,DB2 在因为严重错误而关闭实例时会自动将跟踪缓冲区转储至磁盘。因此,如果实例异常结束时启用了跟踪,那么会在诊断目录中创建一个文件,
其名称为 db2trdmp.###,其中 ### 是数据库分区号。Windows® 平台上不会发生这种情况。在这些情况下,您必须手动转储跟踪。
=================================总之,以下是 db2trc 命令的常用顺序示例:
db2trc on -l 8M
db2trc clr
db2trc dump db2trc.dmp
db2trc off
db2trc flw db2trc.dmp .flw
db2trc fmt db2trc.dmp .fmt
db2trc fmt -c db2trc.dmp .fmtc
最后把最后三个文件发送给IBM支持人员。
如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!
赞0
添加新评论0 条评论