ITPub博客

首页 > 数据库 > 国内数据库 > GBase8s数据库监控指标

GBase8s数据库监控指标

原创 国内数据库 作者:Ln886 时间:2021-04-23 09:45:23 0 删除 编辑

指标分类

指标名称

指标说明

采集方式

相关命令

系统类指标




OS CPU

CPU Busy Rate

CPU繁忙率

sigar

sigar.getCpuPercList();

CPU Busy Rate(Avg)

CPU繁忙率平均值

sigar

sigar.getCpuPercList();

CPU Busy Rate(Max)

CPU繁忙率最大值

sigar

sigar.getCpuPercList();

CPU I/O Wait

CPU I/O等待率

sigar

sigar.getCpuPercList();

OS Memory

OS Memory Page In

内存页换入

系统命令

vmstat -s |grep page

OS Memory Page Out

内存页换出

系统命令

vmstat -s |grep page

OS Free Physical Memory

空闲物理内存

sigar

sigar.getMem().getActualFree()

Buffer Read Cache

内存缓冲区大小

系统命令

vmstat 对应cache

Buffer Write Cache

内存缓存区大小

系统命令

vmstat 对应buff

Buffer Waits/Sec

内存等待率



OS Disk

DISK I/O Busy Rate

磁盘繁忙率

系统命令

iostat –d –x –k 1 1
取%util

DISK I/O Busy Rate(Avg)

磁盘繁忙率平均值

系统命令

iostat –d –x –k 1 1
取%util取平均值

DISK I/O Busy Rate(Max)

磁盘繁忙率最大值

系统命令

iostat –d –x –k 1 1
取%util取最大值

Disk I/O Wait

磁盘IO等待时间

系统命令

iostat –d –x –k 1 1
取await

Disk I/O Wait(Avg)

磁盘等待平均值

系统命令

iostat –d –x –k 1 1
取await取平均值

Disk I/O Wait(Max)

磁盘等待最大值

系统命令

iostat –d –x –k 1 1
取await取最大值

Disk Reads(Kb/Sec)

磁盘每秒读取字节数

系统命令

iostat –d –x –k 1 1
取rkB/s

Disk Writes(Kb/Sec)

硬盘每秒写入字节数

系统命令

iostat –d –x –k 1 1
取wkB/s

Disk  Reads/Writes(Kb/Sec)

磁盘读写速度

系统命令

上面两个之和

OS Average Load

系统平均负载

系统命令

系统命令uptime
取值:load average: 0.14, 0.38, 0.25

OS Connection

Network Receiving Queue

网络接收速度(Kb/sec)

sigar

sigar接口

Network Connections

当前网络连接数

系统命令

netstat -nat|grep ESTABLISHED|wc -l

Network Connection Wait

当前等待连接数

系统命令

netstat |grep TIME_WAIT|wc -l

数据库指标




DB VP

DB VP Busy Rate

数据库VP的繁忙率

SQL/命令

onstat -g glo

DB VP Busy Rate(Avg)

数据库VP的繁忙率(平均值)

SQL/命令

onstat -g glo

VP Queue

数据库VP的等待队列数

命令

onstat -g rea  

DB Memory

DB Virtual Memory Allocation

数据库虚拟内存分配数量

命令

onstat -g seg

DB Virtual Memory Utillization

数据库虚拟内存使用量

命令

onstat -g seg

DB Disk

DB Page Reads

数据库中DB Page的Reads数

SQL/命令

onstat -p  【其中的pagreads值】

DB Page Writes

数据库中DB Page的Writes数

SQL/命令

onstat -p  【其中的pagwrits值】

DB Disk Reads

数据中磁盘read数

SQL/命令


onstat -p  【其中的dskreads值】

DB Disk Writes

数据中磁盘write数

SQL/命令


onstat -p  【其中的dskwrits值】

DBSpace Page Reads

数据库中每个DBSpace Page的Reads数

SQL/命令


DBSpace Page Writes

数据库中每个DBSpace Page的Writes数

SQL/命令


DBSpace Utilization

数据库中每个DBSpace使用率

命令

onstat -d

AP

Active SQL

数据库中活动的SQL数

命令

onstat -g sql  【sql stmt type不为空的】

DB Transaction

数据库执行的事务数

SQL/命令

onstat -p  【其中的commit+rollbk值】

Lock Requests

数据库中的锁请求数

SQL/命令

onstat -p  【其中的lockreqs值】

Active Locks

数据库中当前活动的锁数

SQL/命令

onstat -k 取最后一行的数量

DB Commits

数据库中提交的事务数

SQL/命令

onstat -p  【其中的commit值】

以下为即时采集功能(页面添加定时刷新)




List Info

Top Busy Sessions

数据库中最忙的Session

SQL

select sp.sid,ss.username,ss.connected, (sp.isreads+sp.iswrites+sp.isdeletes+sp.isrewrites) TOP_OP
,sp.locksheld,sp. locksheld , sp.seqscans, sdb.odb_dbname from syssesprof sp,syssessions ss, sysopendb sdb where sp.sid=ss.sid and ss.sid=sdb.odb_sessionid;

Top I/O Sessions

数据库中IO最多的Session

SQL

select sp.sid,ss.username,ss.connected, (sp.isreads+sp.iswrites) TOP_OP
, sum(sp.isreads+sp.iswrites) RW, sum(sp.isreads) DR ,sum(sp.iswrites) DW, sp.seqscans, sdb.odb_dbname from syssesprof sp,syssessions ss, sysopendb sdb where sp.sid=ss.sid and ss.sid=sdb.odb_sessionid group by sid,username, connected ,top_op, seqscans, odb_dbname;

Top Memory Sessions

数据库中内存使用最多的Session

SQL+命令

select sp.sid,ss.username,ss.connected,slt.memtotal,slt.memused,sp.total_sorts,sp.locksheld,sp.bufreads,sp.bufwrites,sp.seqscans, sdb.odb_dbname from syssesprof sp,syssessions ss,sysscblst slt, sysopendb sdb where sp.sid=ss.sid and ss.sid=slt.sid and slt.sid=sdb.odb_sessionid;

Top Busy Tables

数据库中最忙的表

SQL

Busy Table列表
  SQL逻辑
  【步骤1】select name from sysmaster:sysdatabases;
  【步骤2】
  遍历步骤1的结果,变量是database_name{
     select p.tabname,sum(sin.ti_nrows) nrows,format_units(sum(sin.ti_nptotal),max(sd.pagesize)) total_size,
        format_units(sum(sin.ti_npused),max(sd.pagesize)) used_size,sum(seqscans) as seqscans,sum(pagreads) diskreads,
 sum(bufreads) bufreads,sum(bufwrites) bufwrites,sum(pagwrites) diskwrites,sum(pagreads)+sum(pagwrites) disk_rsws,
 trunc(decode(sum(bufreads),0,0,(100-((sum(pagreads)*100)/sum(bufreads+pagreads)))),2) rbufhits
     from database_name:systables s,sysmaster:sysptprof p,sysmaster:systabinfo sin,
        sysmaster:sysdbspaces sd,sysmaster:systabnames st  
     where s.tabid>99 and s.tabname=p.tabname and p.dbsname=st.dbsname
        and sd.dbsnum=trunc(st.partnum/1048576) and p.partnum=st.partnum  
        and s.tabname=st.tabname and st.partnum=sin.ti_partnum and st.dbsname='database_name' group by 1 order by 10 desc;";
  }
   【步骤3】
      步骤2中的locklevel字段显示
      select locklevel from database_name where tabname='tabname';
      如果locklevel为P,页面Page Lock显示YES,否则页面Page Lock显示NO

Top Busy Indexes

数据库中最忙的索引

SQL

Busy Index列表
SQL逻辑
  【步骤1】select name from sysmaster:sysdatabases;
  【步骤2】
  遍历步骤1的结果,变量是database_name{
  select st.dbsname databasename,dt.tabname,di.idxname,sd.name dbs_name,
      format_units(sin.ti_nptotal,sd.pagesize) total_size,pagreads diskreads,bufreads,bufwrites,pagwrites diswrites,
      trunc(decode(sum(bufreads),0,0,(100-((sum(pagreads)*100)/sum(bufreads+pagreads)))),2) rbufhits
  from sysmaster:systabnames st,sysmaster:sysdbspaces sd,sysmaster:systabinfo sin,
      database_name:sysindexes di,database_name:systables dt,sysmaster:sysptprof p
  where sd.dbsnum= trunc(st.partnum/1048576) and dt.tabid>99 and di.idxname = st.tabname
      and dt.tabid=di.tabid and st.partnum = sin.ti_partnum and st.dbsname='database_name'
      and p.partnum = st.partnum group by dbs_name,tabname,idxname,databasename,total_size,
      diskreads,bufreads,bufwrites,diswrites order by 1,2,3;
}

Top Running SQLs

数据库中正在运行的SQL

命令

onstat -g sql  【sql stmt type不为空的】
以及onstat -g sql sessionid获取具体的sql

Top Lock tables

数据库中锁请求最多的表

SQL

Top Lock Tables
  【步骤1】
   select skip 0 first 10
       dbsname,tabname,lockreqs,lockwts,lktouts,pagreads,pagwrites,bufreads,bufwrites,seqscans
   from sysmaster:sysptprof order by lockreqs desc;
  【步骤2】
   页面total总数的显示
     select count(1) as total from (步骤1SQL)
   页面列表Lock Mode字段的显示
     select locklevel from dbsname:systables where tabname='tabname';
     如果locklevel是R,页面Lock Mode显示Row Level Locking
     如果locklevel是P,页面Lock Mode显示Page Level Locking
     如果locklevel是B,页面Lock Mode显示Page and row Level Locking


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69997088/viewspace-2769426/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2021-03-24

  • 博文量
    4
  • 访问量
    3887