Grafana监控Oracle数据库的表大小等信息


方案

oracledb_exporter
以及
prometheus
grafana

使用的SQL以及配置文件

[[metric]]
context = "table_sizeinfo"
labels = [ "table_nameinfo","table_tablespace" ]
metricsdesc = { table_rownum = "table row num" , table_colnum = "table col num.", table_size = "table size num" }
request = '''
SELECT
x.table_name AS table_nameinfo,
x.表行数 AS table_rownum,
x.表列数 AS table_colnum,
y.表大小 AS table_size ,
x.table_tablespace as table_tablespace
FROM
(
SELECT
b.table_name,
a.num_rows AS 表行数,
b.count1 AS 表列数 ,
a.TABLESPACE_name as table_tablespace
FROM
dba_tables a
INNER JOIN ( SELECT table_name, count( column_name ) AS count1 FROM dba_tab_columns GROUP BY table_name ) b ON a.table_name = b.table_name
ORDER BY
b.table_name
) x LEFT outer
JOIN (
SELECT
sum( tablesize ) AS 表大小,
tablename
FROM
(
SELECT
sum( C.bytes ) / 1024 / 1024 AS tablesize,
C.table_name AS tablename
FROM
( SELECT A.table_name, B.bytes FROM dba_lobs A, dba_extents B WHERE A.segment_name = B.segment_name ) C
GROUP BY
C.table_name UNION ALL
SELECT
sum( bytes ) / 1024 / 1024 AS tablesize,
segment_name AS tablename
FROM
dba_extents
WHERE
segment_type = 'TABLE'
GROUP BY
segment_name
)
GROUP BY
tablename
ORDER BY
1 DESC
) y ON x.table_name = y.tablename
ORDER BY
nvl(y.表大小,0) desc FETCH NEXT 10 ROWS ONLY

grafana增加panel的处理

第一步: 新建一个dashboard 选择 Add Visualization
第二步: 选择数据源; 选择prometheus
第三步: 保存dashboard 可以修改一个名字, 比如Oracle表信息测试.
第四步: 点击设置. 可以增加变量, 用于实现识别prometheus的信息内容
注意 因为我们选用的是oracledb_exporter的组件. 所以可以使用如下方式
host label_values(oracledb_up,instance)
方式为query ; 来源是prometheus ; instance 值是 oracledb_up
注意 值可以从 metrics 里面获取. 第五步: 编辑panel 增加三个Query
根据第一步新增加的 查询 metrics 桑一般为:
oracledb_table_sizeinfo_table_colnum
oracledb_table_sizeinfo_table_rownum
oracledb_table_sizeinfo_table_size
注意命名规范为 oracledb_metricsname_metrics_desc 注意, 需要再 Options 处进行修改
注意 format 选择为 table type 选择为 instant 第五步: 编辑Query旁边的Transform
因为我们有三个指标, 所以第一个必须选择 merge 的transform 第二个 选择Group by 组件
注意 表空间和表名都选择 group by 的方式
然后三个结果 建议选择 max 如果想确保周期内的大小变化值 第三个 增加 organize fields 的组件, 可以修改列的名称 便于分析查看 第六步: 保存 这个界面暂时无法获取较早的结果值, 需要再分析一下.

Grafana监控Oracle数据库的表大小等信息的更多相关文章

  1. Zabbix+Orabbix监控oracle数据库表空间

    Orabbix 是设计用来为 zabbix 监控 Oracle 数据库的插件,它提供多层次的监控,包括可用性和服务器性能指标. 它提供了从众多 oracle 实例采集数据的有效机制,进而提供此信息的监 ...

  2. 使用Zabbix监控Oracle数据库

    Orabbix介绍 监控Oracle数据库我们需要安装第三方提供的Zabbix插件,我们先测试比较有名的Orabbix,http://www.smartmarmot.com/product/orabb ...

  3. Oracle 数据库整理表碎片

    Oracle 数据库整理表碎片 转载:http://kyle.xlau.org/posts/table-fragmentation.html 表碎片的来源 当针对一个表的删除操作很多时,表会产生大量碎 ...

  4. 搜索表字段包含某字符串的SQL和监控Oracle数据库的SQL。

    1.第一个SQL 背景:需要找到SQL Server数据库中,包含某个字符串的表,输出表和包含该字符串的列. )='=' --这里填要搜索的字符串 DECLARE @sql NVARCHAR(MAX) ...

  5. 利用zabbix监控oracle数据库

    一.概述 zabbix是一款非常强大,同时也是应用最为广泛的开源监控软件,本文将给大家介绍如何利用zabbix监控oracle数据库. 二.环境介绍 以下是我安装的环境,实际部署时并不需要跟我的环境一 ...

  6. 8个DBA最常用的监控Oracle数据库的常用shell脚本

    本文介绍了8个常用的监控数据shell脚本.首先回顾了一些DBA常用的Unix命令,以及解释了如何通过Unix Cron来定时执行DBA脚本.网上也有好多类似的文章,但基本上都不能正常运行,花点时间重 ...

  7. Zabbix的自定义键值和自动发现功能监控Oracle数据库的表空间

    前面介绍了利用Orabbix监控了,参考zabbix通过Orabbix监控oracle数据库,这里我们原先的模板中进行了修改,使用自动发现功能实现监控tablespace的使用情况. 1. 在被监控的 ...

  8. 链接oracle数据库 生成表对应的javabean

    package com.databi.utils; import java.io.File; import java.io.FileOutputStream; import java.io.IOExc ...

  9. ORACLE 数据库及表信息

    查看ORACLE 数据库及表信息   -- 查看ORACLE 数据库中本用户下的所有表 SELECT table_name FROM user_tables; -- 查看ORACLE 数据库中所有用户 ...

  10. 【Zabbix】zabora监控Oracle数据库

    zabora监控Oracle数据库 它作为一个开源项目,通过shell脚本有效的监控Oracle基础指标.本文档旨在通过实战,在Zabbix 3.0版本之下,监控生产环境下的多台Oracle数据库. ...

随机推荐

  1. Freezable ---探索WPF中Freezable承载数据的原理

    引言 在之前写的一篇文章[WPF --- 如何以Binding方式隐藏DataGrid列]中,我先探索了 DataGridTextColumn 为什么不在可视化树结构内?又给出了解决方案,使用 Fre ...

  2. CTFHub XSS DOM反射 WriteUp

    前言:本文需要注册一个xss平台,以接收xss反弹回来的数据,请自己在互联网上寻找合适的xss平台 1. 构造闭合语句 根据题目提示,判断网站存在DOM xss漏洞 查看页面源代码,发现关键位置,其中 ...

  3. 劫持 PE 文件:搜索空间缝隙并插入ShellCode

    因近期项目需要弄一款注入型的程序,但多次尝试后发现传统的API都会被安全软件拦截,比如 CreateRemoteThread.SetWindowHookEx.APC.GetThreadContext. ...

  4. yml与json互转、yaml转json、json转yml

    yml与json互转.yaml转json.json转yml 使用jackson下的格式化模块实现 依赖: <dependency> <groupId>com.fasterxml ...

  5. P3537 [POI2012]SZA-Cloakroom 题解

    题目大意 有 \(n\) 件物品,每件物品有三个属性 \(a_i, b_i, c_i (a_i < b_i)\). 再给出 \(q\) 个询问,每个询问由非负整数 \(m, k, s\)组成,问 ...

  6. 物联网SIM卡和SIM卡真的不是一回事

    办卡吗,兄弟? 物联网卡?相信大家第一反应都是一愣.大家听过银行卡.电话SIM卡.会员卡-等等,很多人可能都是第一次听说物联网卡.那它到底是个什么东东?它能干什么呢?今天就带大家一探究竟. 那在物联网 ...

  7. Python压缩JS文件,重点是 slimit

    摘要:Python Web程序员必看系列,学习如何压缩 JS 代码. 本文分享自华为云社区<Python压缩JS文件,PythonWeb程序员必看系列,重点是 slimit>,作者: 梦想 ...

  8. 让 Java 打包缩小一大半,Solon v1.9.3 发布

    相对于 Spring Boot 和 Spring Cloud 的项目: 启动快 5 - 10 倍. (更快) qps 高 2- 3 倍. (更高) 运行时内存节省 1/3 ~ 1/2. (更少) 打包 ...

  9. Solon Logging 日志插件的记录器、添加器级别控制

    有需要的人可以记下 solon.logging.appender: console: level: TRACE #设置级别,默认为 TRACE enable: true #是否启用,默认为 true ...

  10. Python MatplotlibDeprecationWarning Matplotlib 3.6 and will be removed two minor releases later

    百度飞桨(PaddlePaddle)-数字识别 在Pycharm中使用Matplotlib中的pyplot时,运行代码报错: MatplotlibDeprecationWarning: Support ...