首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >COSM提要正在接收更新,但图形在0处扁平

COSM提要正在接收更新,但图形在0处扁平
EN

Stack Overflow用户
提问于 2013-05-06 16:25:23
回答 2查看 945关注 0票数 1

上下文:

我使用COSM的第一个项目是从我的电表记录数据点。当我查看graph of the feed时,即使数据点似乎被正确接收,它也是平坦的。

你知道哪里出了问题吗,或者我应该找些什么来调试它?

更多信息:

当我调试我的提要时,我看到它预计每分钟接收大约8个API请求。

这是一个通过COSM的“debug feed”接口查看的已接收数据点的实例。特别要注意的是,响应是200ok,请求正文有一个合理的时间戳和一个非零值:

代码语言:javascript
复制
200 POST /api/v2/feeds/129722/datastreams/1/datapoints 06-05-2013 | 08:16:54 +0000

Request Headers
Version HTTP/1.0
Host    api.cosm.com
X-Request-Start 1367828214422267
X-Apikey    <expunged>
Accept-Encoding gzip, deflate, compress
Accept  */*
User-Agent  python-requests/1.2.0 CPython/2.7.3 Linux/3.6.11+
Origin  

Request Body
{"at": "2013-05-06T08:16:57", "value": 164.0}

Response Headers
X-Request-Id    245ee3ca6bd99efd156bff2416404c33f4bb7f0f
Cache-Control   max-age=0
Content-Type    application/json; charset=utf-8
Content-Length  0

Response Body
[No Body]

更新

尽管文档指定JSON是默认的,我还是显式地向POST URL (/api/v2/feeds/129722/datastreams/1/datapoints.json)添加了一个".json“,但这似乎没有任何区别。

更新2

我将" value“值包含在字符串中,因此请求主体现在为(例如):

代码语言:javascript
复制
{"at": "2013-05-06T15:37:06", "value": "187.0"}

仍然表现相同:我在调试视图中看到了更新,但在图形视图中只报告了0。

更新3

我尝试使用API而不是COSM提供的图形来查看数据。我的猜测是,由于某种原因,这些数据点没有被存储(尽管返回状态为200OK)。如果我将此URL放入web浏览器中:

代码语言:javascript
复制
http://api.cosm.com/v2/feeds/129722.json?interval=0

我得到的回应是:

代码语言:javascript
复制
{"id":129722,
 "title":"Rainforest Automation RAVEn",
 "private":"false",
 "tags":["power"],
 "feed":"https://api.cosm.com/v2/feeds/129722.json",
 "status":"frozen",
 "updated":"2013-05-06T05:07:30.169344Z",
 "created":"2013-05-06T00:16:56.701456Z",
 "creator":"https://cosm.com/users/fearless_fool",
 "version":"1.0.0",
 "datastreams":[{"id":"1",
                 "current_value":"0",
                 "at":"2013-05-06T05:07:29.982986Z",
                 "max_value":"0.0",
                 "min_value":"0.0",
                 "unit":{"type":"derivedSI","symbol":"W","label":"watt"}}],
 "location":{"disposition":"fixed","exposure":"indoor","domain":"physical"}
}

请注意,尽管调试工具每分钟显示七到八个更新,但状态仍被列为“冻结”(上次收到的更新> 15分钟前)。我的数据点到哪里去了?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-07 12:55:46

已解决。正如cosm.com support的@Calum友好地指出的那样,我没有发送格式正确的请求。我发送了以下JSON:

代码语言:javascript
复制
{"at": "2013-05-06T08:16:57", "value": 164.0}

当我应该发送:

代码语言:javascript
复制
{
  "datapoints":[
    {"at": "2013-05-06T08:16:57", "value": 164.0}
  ]
}

Calum还指出,我可以一次批处理几个点,以减少交易数量。我会讲到这一点,但现在,我可以说,修复请求的主体使一切都开始工作。

票数 2
EN

Stack Overflow用户

发布于 2013-05-06 17:29:42

这听起来像是图表中的一个bug,我见过几次非常相似的东西。

我经常使用Cosm Feed Viewer Chrome扩展,它使用WebSocket endpoint实时显示最新的值。

使用RickshawCosmJS将自定义图形组合在一起应该不是太难。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16394794

复制
相关文章

相似问题

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