当前位置: 首页 > news >正文

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

供数据库和系统管理员使用的主日志文件为管理通知日志。db2diag 日志文件旨在供 IBM 软件支持机构用于进行故障诊断。

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

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

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

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

db2diag -g db=SAMPLE

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

2006-02-15-19.31.36.114000-300 E21432H406         级别:错误
PID:940                  TID:660         PROC:db2syscs.exe
实例:DB2                      节点:000          数据库:SAMPLE
APPHDL:0-1056                 APPID:*LOCAL.DB2.060216003103
函数:DB2 UDB,基本系统实用程序,sqleDatabaseQuiesce,探测点:2
消息: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 日志文件记录:

2006-02-13-14.34.36.027000-300 I18366H421         级别:严重
PID     : 2200                 TID  : 660         PROC : db2syscs.exe
实例:DB2                      节点:000          数据库:SAMPLE
APPHDL:0-1433               APPID:*LOCAL.DB2.060213193043
函数:DB2 UDB,数据管理,sqldPoolCreate,探测点:273
返回码:ZRC=0x8002003C=-2147352516=SQLB_BAD_CONTAINER_PATH“错误的容器路径”

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

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

db2diag -time 2006-01-01 -node "0,1,2" -level "Severe, Error" |
db2diag -fmt "Time: %{ts}
分区:%node Message Level:%{level} \nPid:%{pid}  Tid:%{tid}
实例:%{instance}\nMessage: @{msg}\n"

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

时间:2006-02-15-19.31.36.099000 分区:000 消息级别:错误
Pid:940 Tid:40 实例:DB2
消息: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 的记录,请使用以下命令:

db2diag -fac OPTSTATS -level Severe

要显示来自所有可用工具的消息并滤出实例为 harmistr 级别为 Error 的记录,请使用以下命令:

db2diag -fac all -g instance=harmistr,level=Error

要显示 OPTSTATS 工具中级别为 Error 并且以特定格式输出时间戳记和 PID 字段的所有消息,请使用以下命令:

db2diag -fac optstats -level Error -fmt " Time :%{ts} Pid :%{pid}"

示例 5:根据时间戳记来合并文件和对记录进行排序

此示例说明了如何根据时间戳记来合并两个或更多 db2diag 日志文件以及对记录进行排序。

要合并的两个 db2diag 日志文件为下列各项:

  • db2diag.0.log;它包含具有以下时间戳记的 Level:Error 的记录:
    • 2009-02-26-05.28.49.822637
    • 2009-02-26-05.28.49.835733
    • 2009-02-26-05.28.50.258887
    • 2009-02-26-05.28.50.259685
  • db2diag.1.log;它包含具有以下时间戳记的 Level:Error 的记录:
    • 2009-02-26-05.28.11.480542
    • 2009-02-26-05.28.49.764762
    • 2009-02-26-05.29.11.872184
    • 2009-02-26-05.29.11.872968

要根据时间戳记来合并两个诊断日志文件以及对记录进行排序,请执行以下命令:

db2diag -merge db2diag.0.log db2diag.1.log -fmt %{ts} -level error

执行合并以及对记录进行排序的结果为如下所示:

  • 2009-02-26-05.28.11.480542
  • 2009-02-26-05.28.49.764762
  • 2009-02-26-05.28.49.822637
  • 2009-02-26-05.28.49.835733
  • 2009-02-26-05.28.50.258887
  • 2009-02-26-05.28.50.259685
  • 2009-02-26-05.29.11.872184
  • 2009-02-26-05.29.11.872968

时间戳记是按时间顺序进行合并和排序的。

示例 6:按时间戳记合并单台主机中的诊断目录路径文件以及对记录进行排序

缺省情况下,每个成员和 CF 日志 写至不同 db2diag 日志文件。以下是要合并的三个 db2diag 日志文件的列表:

  • ~/sqllib/db2dump/DIAG0000/db2diag.log
  • ~/sqllib/db2dump/DIAG0001/db2diag.log
  • ~/sqllib/db2dump/DIAG0002/db2diag.log

要根据时间戳记来合并这三个诊断日志文件以及对记录进行排序,请执行以下命令:

db2diag -merge

示例 7:合并多台主机和多个数据库分区中的诊断目录路径文件

此示例说明了如何获得所有诊断日志中所有记录的输出,以及如何合并 bower 和 horton 这两个主机中每个主机上的三个数据库分区中的诊断日志文件。以下列表显示六个 db2diag 日志文件:

  • ~/sqllib/db2dump/HOST_bower/DIAG0000/db2diag.log
  • ~/sqllib/db2dump/HOST_bower/DIAG0001/db2diag.log
  • ~/sqllib/db2dump/HOST_bower/DIAG0002/db2diag.log
  • ~/sqllib/db2dump/HOST_horton/DIAG0003/db2diag.log
  • ~/sqllib/db2dump/HOST_horton/DIAG0004/db2diag.log
  • ~/sqllib/db2dump/HOST_horton/DIAG0005/db2diag.log

要输出所有这六个 db2diag 日志文件中的记录,请运行以下命令:

db2diag -global

bower 和 horton 这两个主机中每个主机上有三个数据库分区,要合并这些数据库分区中的诊断数据目录路径中的所有六个 db2diag 日志文件,并且根据时间戳记设置输出的格式,请执行以下命令:

db2diag -global -merge -sdir /temp/keon -fmt %{ts}

其中 /temp/keon 是 bower 和 horton 这两个主机共享的共享目录,在处理期间用来存储每个主机的临时合并文件。

示例 8:仅过滤和合并最新的诊断日志条目

在此示例中,将过滤 db2diag 日志文件记录以仅显示特定数目的最新条目。要显示分区数据库环境中每个分区(共有 3 个分区)的 5 个最新格式化记录并按时间戳记进行合并和格式化,请输入:

db2diag -lastrecords 5 -global -merge -sdir /home/vbmithun -fmt %{ts}2010-10-08-04.46.02.092192
2010-10-08-04.46.02.092821
2010-10-08-04.46.02.093497
2010-10-08-04.46.02.094431
2010-10-08-04.46.02.095317
2010-10-08-04.46.05.068648
2010-10-08-04.46.05.069212
2010-10-08-04.46.05.069900
2010-10-08-04.46.05.071008
2010-10-08-04.46.05.071831
2010-10-08-04.46.07.302051
2010-10-08-04.46.07.302727
2010-10-08-04.46.07.303544
2010-10-08-04.46.07.304647
2010-10-08-04.46.07.305391

还可以进一步过滤最新的诊断日志记录以仅返回特定级别的消息。例如,要仅返回最新的 10 个记录中具有严重消息级别的记录,请输入:

$ db2diag db2diag.log -lastrecords 10 -level Severe -fmt %{ts}2010-08-11-04.11.33.733807
2010-08-11-04.11.33.735398

示例 9:归档 db2diag 日志文件

可使用 IBM® Data Server Driver Package 和 IBM Data Server for ODBC and CLI 提供的 db2diag -archive(或 -A)选项来归档无实例客户机上的诊断日志文件。例如:

$ db2diag -A
db2diag: Moving "/home/usr1/clidriver/db2dump/db2diag.log"to     "/home/usr1/clidriver/db2dump/db2diag.log_2010-09-14-01.16.26"

注: 下列命令可以在没有实例的客户机上产生相同的结果。

如果您指定除 -archive 或 -A 之外的选项,那么将返回错误消息。例如:

$ db2diag -x
db2diag: Unrecognized option: -x$ db2diag -pid 1234
db2diag: Unrecognized option: -pid

相关文章:

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

供数据库和系统管理员使用的主日志文件为管理通知日志。db2diag 日志文件旨在供 IBM 软件支持机构用于进行故障诊断。 管理通知日志消息也以标准化消息格式记录到 db2diag 日志文件。 db2diag 工具用于对 db2diag 日志文件中的大量信息进行过滤和格式化。过滤 db2diag 日志文…...

在Pytorch中使用Tensorboard可视化训练过程

这篇是我对哔哩哔哩up主 霹雳吧啦Wz 的视频的文字版学习笔记 感谢他对知识的分享 本节课我们来讲一下如何在pytouch当中去使用我们的tensorboard 对我们的训练过程进行一个可视化 左边有一个visualizing models data and training with tensorboard 主要是这么一个教程 那么这里…...

Redis 命令全解析之 Hash类型

文章目录 ⛄介绍⛄命令⛄RedisTemplate API⛄应用场景 ⛄介绍 Hash类型,也叫散列,其value是一个无序字典,类似于Java中的 HashMap 结构。 String结构是将对象序列化为JSON字符串后存储,当需要修改对象某个字段时很不方便&#xf…...

postgresql数据库配置主从并配置ssl加密

1、先将postgresql数据库主从配置好 参考:postgresql主从配置 2、在主节点配置ssl加密,使用navicat测试是否可以连接 参考:postgresql配置ssl 3、正常连接无误后,将root.crt、server.crt、server.key复制到从数据库节点的存储…...

IO多路转接之select

IO多路转接之select 1. IO多路转接(复用)2. select2.1 函数原型2.2 细节描述 3. 并发处理3.1 处理流程3.2 通信代码 原文链接 1. IO多路转接(复用) IO多路转接也称为IO多路复用,它是一种网络通信的手段(机…...

linux如何删除大文件的第一行(sed)

可以用sed命令实现&#xff1a; 删除文档的第一行 1. sed -i 1d <file>删除文档的最后一行 1. sed -i $d <file>在文档指定行中增加一行 # 示例如下&#xff1a; echo "1"; echo "2"; echo "4"; echo "5"; # 想要在echo…...

Navicat 技术指引 | 适用于 GaussDB 分布式的备份/还原功能

Navicat Premium&#xff08;16.3.3 Windows 版或以上&#xff09;正式支持 GaussDB 分布式数据库。GaussDB 分布式模式更适合对系统可用性和数据处理能力要求较高的场景。Navicat 工具不仅提供可视化数据查看和编辑功能&#xff0c;还提供强大的高阶功能&#xff08;如模型、结…...

【广州华锐互动VRAR】VR戒毒科普宣传系统有效提高戒毒成功率

随着科技的不断发展&#xff0c;虚拟现实&#xff08;VR&#xff09;技术已经逐渐渗透到各个领域&#xff0c;为人们的生活带来了前所未有的便利。在教育科普领域&#xff0c;VR技术的应用也日益广泛&#xff0c;本文将详细介绍广州华锐互动开发的VR戒毒科普宣传系统&#xff0…...

守护安全,六氟化硫气体泄漏报警装置校准服务

在电力工业中&#xff0c;六氟化硫&#xff08;SF6&#xff09;气体是一种重要的介质&#xff0c;它用作封闭式中、高压开关的灭弧和绝缘气体。六氟化硫气体的卓越性能实现了装置经济化、低维护化的操作。与普通装置相比&#xff0c;可以节省最多90&#xff05;的空间。 六氟化…...

概率测度理论方法(第 2 部分)

一、说明 欢迎回到这个三部曲的第二部分&#xff01;在第一部分中&#xff0c;我们为测度论概率奠定了基础。我们探索了测量和可测量空间的概念&#xff0c;并使用这些概念定义了概率空间。在本文中&#xff0c;我们使用测度论来理解随机变量。 作为一个小回顾&#xff0c;在第…...

实战:Docker Compose 下 Nginx、Java、Mysql 和 Redis 服务协同部署(包含解决浏览器访问Linux部署服务器本地资源问题)

1. 背景 在该实战中&#xff0c;我们将探讨如何使用Docker Compose协同部署Nginx、Java、Mysql和Redis服务&#xff0c;实现一个视频上传与展示的应用。具体需求如下&#xff1a; Java应用负责上传视频和图片资源到Nginx目录下&#xff0c;作为资源服务器。Nginx服务作为静态…...

Docker 设置国内镜像源

Docker 设置国内镜像源 您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器 具体配置如下&#xff1a; {"registry-mirrors" : ["https://registry.docker-cn.com","http://hub-mirror.c.163.com","https://docker.mirro…...

通信协议 远程调用RPC

1.通讯协议 所有的HDFS通讯协议都是建立在TCP/IP协议之上。 客户端通过一个可配置的TCP端口连接到Namenode&#xff0c;通过ClientProtocol协议与Namenode交 互。而Datanode使用DatanodeProtocol协议与Namenode交互。 一个远程过程调用(RPC)模型被抽象出来封装ClientProtoc…...

决策树 算法原理

决策树 算法原理 决策树的原理 决策树: 从训练数据中学习得出一个树状结构的模型 决策树属于判别模型 决策树是一种树状结构&#xff0c;通过做出一系列决策 (选择) 来对数据进行划分&#xff0c;这类似于针对一系列问题进行选择。 决策树的决策过程就是从根节点开始&#…...

Git全局设置命令---设置提交人邮箱

介绍 使用git命令设置提交人邮箱。 命令 git config --global user.email "xxxxxxxx.com"...

3DCAT+上汽奥迪:打造新零售汽车配置器实时云渲染解决方案

在 5G、云计算等技术飞速发展的加持下&#xff0c;云渲染技术迎来了突飞猛进的发展。在这样的背景下&#xff0c;3DCAT应运而生&#xff0c;成为了业内知名的实时云渲染服务商之一。 交互式3D实时云看车作为云渲染技术的一种使用场景&#xff0c;也逐步成为一种新的看车方式&a…...

物联网+AI智慧工地云平台源码(SaaS模式)

智慧工地云平台充分运用数字化技术&#xff0c;聚焦施工现场岗位一线&#xff0c;依托物联网、互联网、AI等技术&#xff0c;围绕施工现场管理的人、机、料、法、环五大维度&#xff0c;以及施工过程管理的进度、质量、安全三大体系为基础应用&#xff0c;实现全面高效的工程管…...

python打开相机,用鼠标左键框选矩形区域,支持一次框选多个矩形区域,通过鼠标右标清除上一次画的矩形。

方案一 import cv2# Global variables rectangles [] current_rectangle [] drawing False# Mouse callback function def mouse_callback(event, x, y, flags, param):global rectangles, current_rectangle, drawingif event cv2.EVENT_LBUTTONDOWN:drawing Truecurren…...

卷积之后通道数为什么变了

通道数增多与卷积之后得到的图像特征数量有关 卷积层的作用本来就是把输入中的特征分离出来变成新的 feature map&#xff0c;每一个输出通道就是一个卷积操作提取出来的一种特征。在此过程中ReLU激活起到过滤的作用&#xff0c;把负相关的特征点去掉&#xff0c;把正相关的留…...

ubuntu18.04安装opencv-4.5.5+opencv_contrib-4.5.5

一、安装opencv依赖 sudo apt-get install build-essential sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-d…...

面向28nm ELK晶圆的WLCSP封装激光开槽质量与可靠性研究

2017 — Investigation of Production Quality and Reliability Risk of ELK Wafer WLCSP Package Research and Development, Taiwan Semiconductor Manufacturing Company, Ltd., Hsinchu Science Park, Hsinchu, Taiwan, R.O.C. 摘要 本文系统研究了28nm工艺ELK(极端低k)…...

Minecraft服务器技能管理自动化:mcpskills-cli命令行工具实战指南

1. 项目概述与核心价值最近在折腾一些自动化脚本&#xff0c;特别是涉及到Minecraft服务器管理和技能系统的时候&#xff0c;发现很多操作还是得手动进后台敲命令&#xff0c;或者依赖一些图形化面板&#xff0c;效率上总感觉差了点意思。直到我发现了alibiinformationsuperhig…...

【数字孪生实战案例】三维场景中怎样点击飞线,唤起弹窗并加载匹配的关联数据?~山海鲸可视化

在三维数据可视化场景中&#xff0c;飞线常用于呈现跨区域业务关联与流转关系。为增强交互体验与数据可读性&#xff0c;需实现点击飞线触发弹窗&#xff0c;并精准加载匹配的关联数据&#xff0c;让用户可实时查看单条飞线对应的业务信息&#xff0c;提升三维场景的数据交互与…...

宝塔面板 SyntaxError: invalid syntax 报错 完美修复教程

宝塔面板 SyntaxError: invalid syntax 报错 完美修复教程 一、故障现象 宝塔面板版本&#xff1a;11.7.0 系统&#xff1a;Debian GNU/Linux 10 (buster) x86_64 Python3.7.9 访问网站列表/站点管理报错&#xff1a; SyntaxError: invalid syntax /www/server/panel/class/pan…...

xpull:轻量级声明式文件同步工具的设计原理与K8s实战

1. 项目概述&#xff1a;一个轻量级、高可用的文件同步利器在分布式系统、微服务架构乃至日常的自动化运维中&#xff0c;文件同步是一个看似基础却至关重要的环节。无论是将日志文件从边缘服务器拉取到中心进行分析&#xff0c;还是将配置文件从版本库分发到成百上千个实例&am…...

autoloom:自动化工作流编排框架的设计原理与实践指南

1. 项目概述与核心价值最近在GitHub上看到一个挺有意思的项目&#xff0c;叫autoloom&#xff0c;作者是thresher-sh。光看名字&#xff0c;可能有点摸不着头脑&#xff0c;但如果你正在处理一些需要“编织”或“缝合”多个独立数据源、API接口、微服务或者自动化流程的任务&am…...

无感定位技术白皮书——ReID跨镜靠特征接力,原生时空轨迹实现无短板碾压

无感定位技术白皮书——ReID跨镜靠特征接力&#xff0c;原生时空轨迹实现无短板碾压前言在智慧安防、智慧园区、工业物联网等数字化转型核心场景中&#xff0c;跨摄像头目标追踪与精准定位是支撑场景智能化升级的关键底座。长期以来&#xff0c;ReID&#xff08;行人重识别&…...

别再硬熬了!okbiye AI 写作,把毕业论文终稿焊死在及格线以上

okbiye-免费查重复率aigc检测/开题报告/毕业论文/智能排版/文献综述/AI PPT毕业论文 - Okbiye智能写作https://www.okbiye.com/ai/bylw 凌晨两点的宿舍&#xff0c;文档停在 “研究背景” 第三段&#xff0c;导师的红色批注在聊天框堆成了山&#xff0c;知网查重的弹窗跳出来的…...

pgwatch2存储后端对比:PostgreSQL vs InfluxDB vs Prometheus – 选择最适合你的监控方案

pgwatch2存储后端对比&#xff1a;PostgreSQL vs InfluxDB vs Prometheus – 选择最适合你的监控方案 【免费下载链接】pgwatch2 PostgreSQL metrics monitor/dashboard 项目地址: https://gitcode.com/gh_mirrors/pg/pgwatch2 pgwatch2是一款灵活的PostgreSQL指标监控和…...

YOLOv8手机识别检测系统(项目源码+YOLO数据集+模型权重+UI界面+python+深度学习+环境配置)

摘要 针对公共场所中手机使用行为检测的需求&#xff0c;本文基于YOLOv8目标检测算法构建了一套手机检测系统。实验采用自建手机图像数据集&#xff0c;经过数据标注与增强后&#xff0c;训练了YOLOv8模型。最终模型在验证集上取得了mAP50高达1.02、精度0.99、召回率0.99的优异…...