我已使用docker pull迁移到Orion最新版本。
我让我的服务从IOTAgent接收数据,并且我在之前的Orion版本中已经创建了几个实体(0.26)。 Orion能够接收IOTAgent发送的数据。
然而,在迁移之后,我收到此警报
orion_1 | WARNING@10:33:31 AlarmManager.cpp[380]: Raising alarm BadInput myIPADDRESS: attempt to define a geo location attribute [Coords] when another one has been previously defined []
这是我得到的JSON响应
[Wed, 11 May 2016 12:27:52 +0200] ERROR JSON response= :{
"contextResponses" : [
{
"contextElement" : {
"type" : "STCSensor",
"isPattern" : "false",
"id" : "403432100",
"attributes" : [
{
"name" : "Serial",
"type" : "integer",
"value" : ""
},
{
"name" : "BatteryLevel",
"type" : "integer",
"value" : ""
},
{
"name" : "Timestamp",
"type" : "integer",
"value" : ""
},
{
"name" : "Latitude",
"type" : "float",
"value" : ""
},
{
"name" : "Longitude",
"type" : "float",
"value" : ""
},
{
"name" : "Coords",
"type" : "geo:point",
"value" : ""
}
]
},
"statusCode" : {
"code" : "472",
"reasonPhrase" : "request parameter is invalid/not allowed",
"details" : "action: APPEND - entity: [403432100, STCSensor] - offending attribute: Coords - attempt to define a geo location attribute [Coords] when another one has been previously defined []"
}
}
]
}
我应该删除所有实体和订阅吗?
Mongodb尚未更新,仍在使用2.6
如何解决此问题?
答案 0 :(得分:0)
根据用户报告(请参阅问题帖子的评论),解决方案是重新创建实体(即删除,然后再次创建)。
问题的原因可能是与MongoDB中的实体对应的DB文档中存在一些不连贯性。但是,我们永远不会知道... :)