opentsdb源码分析-查询
来源:互联网 发布:域名交易网站 编辑:程序博客网 时间:2024/05/17 22:58
在上一篇文章中安装了tcollector,这样在hbase中就可以查看到数据了。
这是运行了一段时间scan 'tsdb'的结果截图。
用源码启动opentsdb,调试运行,怎么用源码启动会在另一篇文章中中再详细描述
在opentsdb中web页面中页面的图形是用gwt来编写的,至于gwt是什么以及怎样使用百度一下就行,使用的类是QueryUI类,在界面中改变控件的值会调用refreshGraph方法来刷新图形,每次刷新图形的时候都要去进行查询。
查询时会生成一个url串来发送请求, /q?start=2016/01/01-00:00:00&ignore=83&m=sum:proc.meminfo.vmalloctotal&o=&m=sum:proc.interrupts&o=&m=sum:proc.loadavg.total_threads&o=&m=sum:proc.meminfo.active&o=&m=sum:hbase.master.assignmentmanger.assign_max&o=&m=sum:df.bytes.total&o=&yrange=%5B0:%5D&wxh=1260x461&json
RpcHandler接收到请求,判断如果是HttpRequest,因为之前配置过/q是通过GraphHandler来处理,所以转到GraphHandler的doGraph方法来处理。
对要查询的指标构造了Query接口,调用Query的run方法获取到Datapoints[].
TsdbQuery实现了Query接口,通过调试发现,都是直接走到TsdbQuery的run方法中,然后调用了runAsync方法,返回的是Deferred<DataPoints[]>
,在opentsdb中运用了大量了Deferred,就我的理解,它就是返回一个未知的结果,有可能成功也有可能失败,调用后并不等执行而是马上返回,执行成功后会根据callback再执行下面的操作,在runAsync方法中,会新建scanner对象,最后根据async hbase的scanner.nextrows()查找。
- opentsdb源码分析-查询
- opentsdb源码分析---Deferred
- opentsdb源码分析--启动
- opentsdb源码分析--添加
- OpenTSDB源码分析之TSDB-UID表操作(查询)
- OpenTSDB源码分析之TSDB表操作(查询)
- opentsdb源码分析--运行源代码
- opentsdb源码分析--生成rowkey
- opentsdb源码分析--region的名字
- OpenTSDB源码分析之TSDB-UID表操作
- OpenTSDB源码分析之TSDB-UID表操作(新增)
- OpenTSDB源码分析之TSDB-UID表操作(修改)
- OpenTSDB源码分析之TSDB-UID表操作(删除)
- OpenTSDB源码分析之TSDB表操作(新增)
- OpenTSDB 查询介绍
- OpenTSDB 查询示例
- opentsdb
- mongodb源码分析--查询
- [总结]视音频编解码技术零基础学习方法
- swift基础语法
- PHPCMS v9 安全防范教程!
- android sdk 更新 不翻墙
- 测试
- opentsdb源码分析-查询
- 新版Matlab中神经网络训练函数Newff的使用方法
- MySQL索引类型
- LNMP环境下crontab问题
- 文件操作
- 单例设计模式
- 理想的机器学习书
- c++11 thread 封装线程类
- C#内存分配学习