我在自己的服务器上使用 Orion(通过提供的 Docker 容器(版本 1.14.0-next 的容器 Orion))。 除了订阅之外,一切正常。 我发现很多可能的内容可以发送到 Orion 以提交订阅,但当我查询订阅列表时,我仍然看到“状态”:“失败”(并且在任何情况下都没有收到任何数据)。您知道如何解决这样的问题吗?
在下面您可以找到我尝试过的不同版本的链接:
还有(即使是出于不同的目的):
最后是提交的订阅之一:
(curl localhost:1026/v2/subscriptions -s -S --header 'Content-Type: application/json' -d @-) <<EOF
{
"description": "A subscription to get info about Compartment",
"subject": {
"entities": [
{
"id": "Compartment",
"type": "Compartment"
}
],
"condition": {
"attrs": [
"lastUpdate"
]
}
},
"notification": {
"http": {
"url": "http://0.0.0.0:1028/accumulate"
},
"attrs": [
]
},
"expires": "2040-01-01T14:00:00.00Z",
"throttling": 1
}
EOF
最佳答案
失败
状态表示 Orion 已尝试发送通知,但尚未送达。这通常是由于 Orion 和接收器之间的连接问题造成的。
您正在使用http://0.0.0.0:1028/accumulate
作为接收器。这指向本地计算机,即运行 Orion 的同一台计算机。换句话说,监听 1028 端口以接收通知的进程必须与 Orion 运行在同一系统中。
我假设您在一个容器中运行 Orion,而您的接收器进程在另一个容器中运行。这可能是问题的原因。您应该在 url
中使用接收者的 IP,而不是 0.0.0.0
。
关于FIWARE Orion Docker 容器 : problems in notification subscriptions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53746833/