修改bind源码,提供qps等更丰富的统计信息
来源:互联网 发布:mc4d软件下载 编辑:程序博客网 时间:2024/05/21 06:48
BIND本身提供非常丰富的统计信息,其中几个信息比如当前qps,成功率,或者查询类型是什么,没有统计,或者通过rndc 命令是无法获取的,有的时候这些信息对于查看当前服务器的状态有很大的帮助,所以hack了bind的源码,增加了这几个统计项。
统计项目: 每秒查询量(qps),解析成功率, 解析类型,解析结果。
BIND原版本:bind-9.10.0-p2
编译要求: BIND 需要编译成多线程版本,即使用--enable-threads 选项。
使用方法:BIND启动后,即可通过rndc查询。查询命令格式如下
rndc -c rndc.conf key [view] [zone]
key 主要有 qps, success_rate, rcode, rtype
view 如果指定则表示查询此VIEW下的对应key信息。
zone 如果指定则表示查询在视图view 下的区对应的key 信息,目前版本只实现了对于zone的qps计算,并且需要在BIND的配置文件中指定zone-statistics yes;
返回值 是字符串
用法举例
1 查询当前总的qps
rndc -c rndc.conf qps
返回值 qps 5000.000
2 查询当前default视图下的qps
rndc -c rndc.conf qps default
返回值 5000.00
3 查询区123.com在视图default下的qps
rndc -c rndc.conf qps default 123.com
返回值 qps 4000.00
源码和其他例子请参考 github
https://github.com/zhiyuan2007/bind-stats
地址:点击打开链接
liuben@ubuntu:~/lgr/named/etc$ ~/lgr/bind-9.10.0-P2bak/bin/rndc/rndc -c rndc.conf qps
qps 0.000000
liuben@ubuntu:~/lgr/named/etc$ ~/lgr/bind-9.10.0-P2bak/bin/rndc/rndc -c rndc.conf qps
qps 50.331657
liuben@ubuntu:~/lgr/named/etc$ ~/lgr/bind-9.10.0-P2bak/bin/rndc/rndc -c rndc.conf qps default
qps 57.664764
liuben@ubuntu:~/lgr/named/etc$ ~/lgr/bind-9.10.0-P2bak/bin/rndc/rndc -c rndc.conf qps default 1.com
qps 55.329811
liuben@ubuntu:~/lgr/named/etc$ ~/lgr/bind-9.10.0-P2bak/bin/rndc/rndc -c rndc.conf success_rate
success_rate 1.000000
liuben@ubuntu:~/lgr/named/etc$ ~/lgr/bind-9.10.0-P2bak/bin/rndc/rndc -c rndc.conf success_rate default
success_rate 1.000000
liuben@ubuntu:~/lgr/named/etc$ ~/lgr/bind-9.10.0-P2bak/bin/rndc/rndc -c rndc.conf rtype
A 5079 MX 10 AAAA 10
liuben@ubuntu:~/lgr/named/etc$ ~/lgr/bind-9.10.0-P2bak/bin/rndc/rndc -c rndc.conf rtype default
A 5079 MX 10 AAAA 10
liuben@ubuntu:~/lgr/named/etc$ ~/lgr/bind-9.10.0-P2bak/bin/rndc/rndc -c rndc.conf rcode
NOERROR 5079|NXDOMAIN 20
liuben@ubuntu:~/lgr/named/etc$ ~/lgr/bind-9.10.0-P2bak/bin/rndc/rndc -c rndc.conf rcode default
NOERROR 5079|NXDOMAIN 20
- 修改bind源码,提供qps等更丰富的统计信息
- 借助case,实现更丰富的分组查询统计
- 更丰富的用户界面
- 更丰富的广泛
- Fourth-更丰富的用户界面
- 如何通过源码修改手机型号等信息
- 最简单的qps统计方法
- Redis提供了丰富的命令
- XAF之更丰富的状态栏
- svg滤镜, 更丰富的色彩魔法!!
- SQLserver提供的统计信息流已损坏
- virtualbox-修改硬盘的序列号等信息
- 修改机器的DNS等信息
- Oracle系统统计信息重要性(包含空闲+负载时的CPU IO等统计信息)
- (转)MySQL TPS 和 QPS 的统计和IOPS
- MySQL TPS 和 QPS 的统计和IOPS
- 给HUSTOJ用户提供的源码阅读与修改建议
- AppCan 3.0提供交互丰富的MPaaS/MBaaS云服务
- 如何将ramdisk.img 编译进内核和修改init.rc
- 第一章第7题
- Beginning QA --- Basics and Related Concepts
- HDU 3555 Bomb(数位DP)
- 计算机技术缩略图
- 修改bind源码,提供qps等更丰富的统计信息
- xampp中mySQL中文变成问号的解决方案
- Android 源代码中增加新apk
- 对三个变量按由大到小输出。使用变量的引用
- 第一章第8题
- Android通过源码编译apk获得系统权限
- C#做单元测试,如何查看输出的调试信息?
- sdk 升级问题
- 第一章第9题