首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >openstack ceilometer能否进行实时实例监控

openstack ceilometer能否进行实时实例监控
EN

Stack Overflow用户
提问于 2015-07-06 20:06:10
回答 2查看 276关注 0票数 1

我正在开发一个用于系统监控的仪表板。我之前一直在使用ceilometer的python API。但我注意到,每次我运行程序时,它都会以这种方式从一开始就发送数据,相同的数据会重复多次。在Ceilometer中有没有一种方法,当我查询我的数据时,它会给我系统的当前值。我的代码如下

代码语言:javascript
复制
auth=v2.Password(auth_url="url", username="username", password="pass", tenant_id='009867')


sess = session.Session(auth=auth,verify=False)    
token = auth.get_token(sess)

cclient = client.get_client(2, ceilometer_url="http://orbit1.ds.cs.umu.se:8777/", token=token,verify=False)


data = cclient.samples.list(meter_name ='cpu_util')


thing = {}
msg = {}
cols = []

for row in data:
    col = {}
    col = {"x": row.timestamp, "y": row.counter_volume}
    cols.append(col)



msg['columns'] = cols

thing['message'] = msg

print json.dumps(thing, indent=4)
EN

回答 2

Stack Overflow用户

发布于 2017-02-02 07:48:25

您可以通过将limit参数添加到查询中来获取ceilometer数据库中的最新条目,如下所示:

代码语言:javascript
复制
data = cclient.samples.list(meter_name ='cpu_util', limit=1)
票数 1
EN

Stack Overflow用户

发布于 2016-06-24 02:55:39

您可以使用过滤查询来获取一段时间内的样本列表。将你得到的最后一个样本保存在某个地方,这样每次你从那个时间戳开始获取样本时。

代码语言:javascript
复制
query = [dict(field='timestamp', op='gt', value=start_timestamp), dict(field='timestamp', op='lt', value=end_timestamp)]                          
print cclient.statistics.list(meter_name='cpu_util', q = query)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31245421

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档