暂无图片
暂无图片
2
暂无图片
暂无图片
暂无图片

OGG Trail分析利器-Logdump

DBA天团 2021-02-05
3163

Logdump是GoldenGate中附带的一个工具软件,在GoldenGate的安装目录下可以找到。这个工具主要用于分析GoldenGate生成的队列文件,排除同步故障,精确查找、跳过队列事务以及统计队列文件中的数据等。


1
进入logdump命令行

在GoldenGate的安装目录下直接运行./logdump即可



2

命令行显示设置


  1. 打开一个trailfile


Logdump 1 >open ./dirdat/rt000000168


Current LogTrail is /sasdata/ogg/dirdat/rt000000168


  1. 显示记录头信息


Logdump 2 >GHDR ON


记录头中包含事务的一些信息,如事务类型,事务长度,记录提交时间等。


  1. 添加列信息


Logdump 3 >DETAIL ON


hex和ASCII中显示列序号和长度


  1. 在列信息中添加hex和ASCII的值


Logdump 4 >DETAIL DATA


  1. 查看用户自定义的tokens


Logdump 5 > USERTOKEN ON


tokens即用户在抽取或传输时添加在表或者file中的定制信息


  1. 查看OGG生成的tokens


Logdump 6 > GGSTOKEN ON


OGG自动生成的tokens包括事务ID(XID),DML操作的row id


  1. 控制显示记录长度


Logdump 7> RECLEN length


以下是显示一个记录的明细情况:



3

文件头信息解读


Hdr-Ind:该值总是E,表示是extract创建,如果为其他属性,则表示不可用。

UndoFlag:该值正常情况下总是0,但是如果这个记录是前一个操作回滚的,那么这个值会变为1。

RecLength:事务记录长度。

IOType:常见的IO类型,insert、update、delete、commit

TransInd:记录在事务中的位置



BeforeAfter: 对于update操作,表示该数据是before image还是after image。对于insert操作,总是after images,而delete操作总是before images。

IO Time:记录提交时间

FormatType:表示数据是从事务日志读取还是直接从数据库中获取。取值为F和R,F表示fetched from database,R表示readable in transaction log。



4
指令介绍

1 Logdump 114 >NEXT or N

-- Display next data record


2 Logdump 119 >POSITION or POS 3876

Reading forward from RBA 3876

-- Move to any RBA in the file


3 Logdump 128 >COUNT

-- Count the records in the file


4 Logdump 130 >SCANFORHEADER (SFH)

-- Search for the start of a header


5 Logdump 133 >SCANFORTYPE (SFT)

-- Find the next record of <TYPE>

注意:这个参数每次搜索之后如果没有返回结果,指针会停留在file结尾,下次再匹配记录类型需要先pos到开始位置,即:pos first或者pos 0,否则不会有结果返回。


6 Logdump 141 >SCANFORNEXTTRANS (SFNT)

-- Find start of the next transaction


7 Logdump 145 >SCANFORENDTRANS (SFET)

-- Find the end of the current transaction


8 Logdump 148 >SCANFORMETADATA (SFMD)

-- Find a metadata record


9 Logdump 152 >FILTER [INClude | EXCLude] FILENAME schema.table

--Display the record of schema.table only


10 Logdump 153 >FILTER INCLUDE IOTYPE insert,update,delete

--Display the record of insert,update,delete


11 Logdump 155 >FILTER INCLUDE STARTTIME 2017-10-11 17:00:00

--Display the record after timestamp


12 Logdump 158 >FILTER CLEAR

13 Logdump 160 >FILTER [INClude | EXCLude] FILENAME schema.table; FILTER INCLUDE IOTYPE insert,update,delete

--多个过滤条件


14 Logdump 165 > SAVE nnn RECORDS | nnn BYTES

--save some records as file



5
总结

     Logdump提供了丰富的命令筛选、显示OGG队列文件信息,为查找事务队列信息和处理同步进程报错提供了很大的便利性。


——————————————

网易MySQL中间件Cetus开源啦

github地址:https://github.com/Lede-Inc/cetus/blob/master/doc/cetus-quick-try.md

社群  cetus开源qq群号: 521824702

微信群:扫描网易DBA小助手加入


2018年网易乐得数据库及运维分享会

7月1日网易北京研发中心举行

名额有限,速度扫码报名

点击阅读原文也可报名

欢迎分享


网易乐得DBA组负责网易乐得电商、网易邮箱、网易技术部数据库日常运维,负责数据库私有云平台的开发和维护,负责数据库及数据库中间件的开发和测试等,分享最前沿实用数据库干货,关注网易乐得DBA,精修数据库功底。


文章转载自DBA天团,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论