使用 db2diag 工具来分析 db2diag 日志文件

db2diag 工具是用于过滤和格式化 IBM 数据库管理器主日志文件的实用程序,主要用于故障诊断。本文详细介绍了如何使用 db2diag 过滤日志文件,如按数据库名称、进程标识、错误级别等进行筛选,并展示了多个实用示例,包括按时间戳合并日志、格式化输出和归档日志文件等。
摘要由CSDN通过智能技术生成

供数据库和系统管理员使用的主日志文件为管理通知日志。

db2diag 日志文件旨在供 IBM 软件支持机构用于进行故障诊断。

管理通知日志消息也以标准化消息格式记录到 db2diag 日志文件。

db2diag 工具用于对 db2diag 日志文件中的大量信息进行过滤和格式化。过滤 db2diag 日志文件记录可缩短诊断问题时查找所需记录的时间。

 

示例 1:按数据库名称过滤 db2diag 日志文件

如果实例中有若干数据库,并且您只希望显示与数据库“SAMPLE”有关的信息,那么可以按如下所示过滤 db2diag 日志文件:

db2diag -g db=SAMPLE

因此,将仅显示包含“DB: SAMPLE”的 db2diag 日志文件记录,如:

 
  1. 2006-02-15-19.31.36.114000-300 E21432H406         级别:错误

  2. PID:940                  TID:660         PROC:db2syscs.exe

  3. 实例:DB2                      节点:000          数据库:SAMPLE

  4. APPHDL:0-1056                 APPID:*LOCAL.DB2.060216003103

  5. 函数:DB2 UDB,基本系统实用程序,sqleDatabaseQuiesce,探测点:2

  6. 消息:ADM7507W  数据库停顿请求成功完成。

示例 2:按进程标识过滤 db2diag 日志文件

以下命令可用来显示进程标识 (PID) 为 2200,并且在分区 0、1、2 或分区 3 上运行的进程生成的所有严重错误消息:

db2diag -g level=Severe,pid=2200 -n 0,1,2,3

注意,此命令可能以不同方式写入,包括 db2diag -l severe -pid 2200 -n 0,1,2,3。还要注意的是,-g 选项指定区分大小写的搜索,所以此处“Severe”会起作用,但如果使用了“severe”则会失败。满足如下要求时,这些命令将成功检索 db2diag 日志文件记录:

 
  1. 2006-02-13-14.34.36.027000-300 I18366H421         级别:严重

  2. PID     : 2200                 TID  : 660         PROC : db2syscs.exe

  3. 实例:DB2                      节点:000          数据库:SAMPLE

  4. APPHDL:0-1433               APPID:*LOCAL.DB2.060213193043

  5. 函数:DB2 UDB,数据管理,sqldPoolCreate,探测点:273

  6. 返回码:ZRC=0x8002003C=-2147352516=SQLB_BAD_CONTAINER_PATH

  7.                     “错误的容器路径”

示例 3:格式化 db2diag 工具输出

以下命令过滤 2006 年 1 月 1 日之后发生,并且包含分区 0、1 或2 上记录的所有非严重错误和严重错误的所有记录。它会输出匹配的记录,因此时间戳记、分区号和级别将出现在第一行上,而 pid、tid 和实例名将出现在第二行上,之后是错误消息:

 
  1. db2diag -time 2006-01-01 -node "0,1,2" -level "Severe, Error" |

  2. db2diag -fmt "Time: %{ts}

  3. 分区:%node Message Level:%{level} \nPid:%{pid}  Tid:%{tid}

  4. 实例:%{instance}\nMessage: @{msg}\n"

生成的输出示例如下所示:

 
  1. 时间:2006-02-15-19.31.36.099000 分区:000 消息级别:错误

  2. Pid:940 Tid:40 实例:DB2

  3. 消息:ADM7506W 已经请求了数据库停顿。

有关更多信息,请发出下列命令:

  • db2diag -help 提供了所有可用选项的简短描述

  • db2diag -h brief 提供对所有不带示例的选项的描述

  • db2diag -h notes 提供用法说明和限制

  • db2diag -h examples 提供一小组示例以帮助您入门

  • db2diag -h tutorial 提供所有可用选项的示例

  • db2diag -h all 提供最完整的选项列表

示例 4:过滤来自不同工具的消息

下列示例显示如何仅查看来自数据库管理器中的特定工具(或所有工具)的消息。受支持的工具包括:

  • ALL,这会返回来自所有工具的记录

  • MAIN,这会返回来自 DB2® 常规诊断日志的记录,例如 db2diag 日志文件和管理通知日志

  • OPTSTATS,这会返回与优化器统计信息有关的记录

要读取来自 MAIN 工具的消息,请使用以下命令:

db2diag -facility MAIN

要显示来自 OPTSTATS 工具的消息并滤出级别为 Severe 的记录,请使用以下命令:

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值