Details
-
Type: Monitor
-
Status: Closed
-
Priority: Major
-
Resolution: Done
-
Affects Version/s: None
-
Fix Version/s: 2021
-
Component/s: FIWARE-TECH-HELP
-
Labels:
-
HD-Chapter:Data
-
HD-Enabler:Orion
Description
Created question in FIWARE Q/A platform on 14-04-2016 at 15:04
Please, ANSWER this question AT http://stackoverflow.com/questions/36624433/subscriptions-dont-seem-to-work-using-dockerized-fiware-orion
Question:
Subscriptions don't seem to work using dockerized fiware-orion
Description:
I'm using Fiware-Orion ContextBroker 0.28, the dockerized version in my localhost on ubuntu 15.10 64 bits.
$ curl localhost:1026/version
{
"orion" : {
"version" : "0.28.0-next",
"uptime" : "0 d, 0 h, 0 m, 6 s",
"git_hash" : "067e13618c247daa4af61f82d7831f3015d9eb5d",
"compile_time" : "Mon Mar 14 13:04:02 UTC 2016",
"compiled_by" : "root",
"compiled_in" : "838a42ae8431"
}
}
The docker configuration I'm using is:
$ cat docker-compose.yml
mongo:
image: mongo:2.6
command: --smallfiles --nojournal
orion:
image: fiware/orion
links:
- mongo
ports: - "1026:1026"
command: -dbhost mongo
The warning I get from orion/docker when I do the subscriptions is:
orion_1 | WARNING@12:19:14 AlarmManager.cpp[303]: Raising alarm NotificationError localhost:1028/accumulate: (curl_easy_perform failed: Couldn't connect to server)
I'm following the API V1 walkthorugh to test subscriptions to changes. I start with a mint new dockerized (sudo docker-compose up and all that fuzz) fiware-orion 0.28 with mongodb. Then I start the accumulator
$ ./accumulator-server.py 1028 /accumulate localhost on
verbose mode is on
- Running on http://localhost:1028/ (Press CTRL+C to quit)
Then I register Room1
$ (curl localhost:1026/v1/updateContext -s -S --header 'Content-Type: application/json' \
> -header 'Accept: application/json' -d @ | python -mjson.tool) <<EOF
> {
> "contextElements": [
> {
> "type": "Room",
> "isPattern": "false",
> "id": "Room1",
> "attributes": [
>
,
>
> ]
> }
> ],
> "updateAction": "APPEND"
> }
> EOF
{
"contextResponses": [
{
"contextElement": {
"attributes": [
,
{ "name": "pressure", "type": "integer", "value": "" } ],
"id": "Room1",
"isPattern": "false",
"type": "Room"
},
"statusCode":
}
]
}
Then I test query context just to check:
$ (curl localhost:1026/v1/queryContext -s -S --header 'Content-Type: application/json' \
> -header 'Accept: application/json' -d @ | python -mjson.tool) <<EOF
> {
> "entities": [
>
> ]
> }
> EOF
{
"contextResponses": [
{
"contextElement": {
"attributes": [
,
{ "name": "temperature", "type": "float", "value": "23" } ],
"id": "Room1",
"isPattern": "false",
"type": "Room"
},
"statusCode":
}
]
}
Then I do the subscription
$ (curl localhost:1026/v1/subscribeContext -s -S --header 'Content-Type: application/json' \
> -header 'Accept: application/json' -d @ | python -mjson.tool) <<EOF
> {
> "entities": [
>
> ],
> "attributes": [
> "pressure"
> ],
> "reference": "http://localhost:1028/accumulate",
> "duration": "P1M",
> "notifyConditions": [
>
> ],
> "throttling": "PT5S"
> }
> EOF
{
"subscribeResponse":
}
At this point the manual says that the accumulator might receive a first update but it's not required, so I don't receive nothing but maybe that's OK. Or maybe not, because after sending the subscription query, orion's docker says:
orion_1 | WARNING@12:19:14 AlarmManager.cpp[303]: Raising alarm NotificationError localhost:1028/accumulate: (curl_easy_perform failed: Couldn't connect to server)
Finally I update the entity and I should receive the update on the accumulator, but I don't:
$ (curl localhost:1026/v1/updateContext -s -S --header 'Content-Type: application/json' \
> -header 'Accept: application/json' -d @ | python -mjson.tool) <<EOF
> {
> "contextElements": [
> {
> "type": "Room",
> "isPattern": "false",
> "id": "Room1",
> "attributes": [
>
,
>
> ]
> }
> ],
> "updateAction": "UPDATE"
> }
> EOF
{
"contextResponses": [
{
"contextElement": {
"attributes": [
,
{ "name": "pressure", "type": "integer", "value": "" } ],
"id": "Room1",
"isPattern": "false",
"type": "Room"
},
"statusCode":
}
]
}
I should also say that it's quite difficult to get fiware-orion to compile on Ubuntu, and that's the reason why I'm using docker.
Activity
Transition | Time In Source Status | Execution Times | Last Executer | Last Execution Date | |||||
---|---|---|---|---|---|---|---|---|---|
|
8m 44s | 1 | Backlog Manager | 15/Apr/16 12:11 PM | |||||
|
1m 25s | 1 | Backlog Manager | 15/Apr/16 12:12 PM |
Fix Version/s | 2021 [ 12600 ] |
Assignee | Fermín Galán [ fermin ] |
Summary | FIWARE.Question.Tech.Subscriptions don't seem to work using dockerized fiware-orion. | FIWARE.Question.Tech.Data.OrionContextBroker.Subscriptions don't seem to work using dockerized fiware-orion. |
HD-Chapter | Data [ 10838 ] |
HD-Enabler | Orion [ 10875 ] | |
Description |
Created question in FIWARE Q/A platform on 14-04-2016 at 15:04 {color: red}Please, ANSWER this question AT{color} http://stackoverflow.com/questions/36624433/subscriptions-dont-seem-to-work-using-dockerized-fiware-orion +Question:+ Subscriptions don't seem to work using dockerized fiware-orion +Description:+ I'm using Fiware-Orion ContextBroker 0.28, the dockerized version in my localhost on ubuntu 15.10 64 bits. $ curl localhost:1026/version { "orion" : { "version" : "0.28.0-next", "uptime" : "0 d, 0 h, 0 m, 6 s", "git_hash" : "067e13618c247daa4af61f82d7831f3015d9eb5d", "compile_time" : "Mon Mar 14 13:04:02 UTC 2016", "compiled_by" : "root", "compiled_in" : "838a42ae8431" } } The docker configuration I'm using is: $ cat docker-compose.yml mongo: image: mongo:2.6 command: --smallfiles --nojournal orion: image: fiware/orion links: - mongo ports: - "1026:1026" command: -dbhost mongo The warning I get from orion/docker when I do the subscriptions is: orion_1 | WARNING@12:19:14 AlarmManager.cpp[303]: Raising alarm NotificationError localhost:1028/accumulate: (curl_easy_perform failed: Couldn't connect to server) I'm following the API V1 walkthorugh to test subscriptions to changes. I start with a mint new dockerized (sudo docker-compose up and all that fuzz) fiware-orion 0.28 with mongodb. Then I start the accumulator $ ./accumulator-server.py 1028 /accumulate localhost on verbose mode is on * Running on http://localhost:1028/ (Press CTRL+C to quit) Then I register Room1 $ (curl localhost:1026/v1/updateContext -s -S --header 'Content-Type: application/json' \ > --header 'Accept: application/json' -d @- | python -mjson.tool) <<EOF > { > "contextElements": [ > { > "type": "Room", > "isPattern": "false", > "id": "Room1", > "attributes": [ > { > "name": "temperature", > "type": "float", > "value": "23" > }, > { > "name": "pressure", > "type": "integer", > "value": "720" > } > ] > } > ], > "updateAction": "APPEND" > } > EOF { "contextResponses": [ { "contextElement": { "attributes": [ { "name": "temperature", "type": "float", "value": "" }, { "name": "pressure", "type": "integer", "value": "" } ], "id": "Room1", "isPattern": "false", "type": "Room" }, "statusCode": { "code": "200", "reasonPhrase": "OK" } } ] } Then I test query context just to check: $ (curl localhost:1026/v1/queryContext -s -S --header 'Content-Type: application/json' \ > --header 'Accept: application/json' -d @- | python -mjson.tool) <<EOF > { > "entities": [ > { > "type": "Room", > "isPattern": "false", > "id": "Room1" > } > ] > } > EOF { "contextResponses": [ { "contextElement": { "attributes": [ { "name": "pressure", "type": "integer", "value": "720" }, { "name": "temperature", "type": "float", "value": "23" } ], "id": "Room1", "isPattern": "false", "type": "Room" }, "statusCode": { "code": "200", "reasonPhrase": "OK" } } ] } Then I do the subscription $ (curl localhost:1026/v1/subscribeContext -s -S --header 'Content-Type: application/json' \ > --header 'Accept: application/json' -d @- | python -mjson.tool) <<EOF > { > "entities": [ > { > "type": "Room", > "isPattern": "false", > "id": "Room1" > } > ], > "attributes": [ > "pressure" > ], > "reference": "http://localhost:1028/accumulate", > "duration": "P1M", > "notifyConditions": [ > { > "type": "ONCHANGE", > "condValues": [ > "pressure" > ] > } > ], > "throttling": "PT5S" > } > EOF { "subscribeResponse": { "duration": "P1M", "subscriptionId": "570f8ac247fcf8a62722353c", "throttling": "PT5S" } } At this point the manual says that the accumulator might receive a first update but it's not required, so I don't receive nothing but maybe that's OK. Or maybe not, because after sending the subscription query, orion's docker says: orion_1 | WARNING@12:19:14 AlarmManager.cpp[303]: Raising alarm NotificationError localhost:1028/accumulate: (curl_easy_perform failed: Couldn't connect to server) Finally I update the entity and I should receive the update on the accumulator, but I don't: $ (curl localhost:1026/v1/updateContext -s -S --header 'Content-Type: application/json' \ > --header 'Accept: application/json' -d @- | python -mjson.tool) <<EOF > { > "contextElements": [ > { > "type": "Room", > "isPattern": "false", > "id": "Room1", > "attributes": [ > { > "name": "temperature", > "type": "float", > "value": "56.5" > }, > { > "name": "pressure", > "type": "integer", > "value": "553" > } > ] > } > ], > "updateAction": "UPDATE" > } > EOF { "contextResponses": [ { "contextElement": { "attributes": [ { "name": "temperature", "type": "float", "value": "" }, { "name": "pressure", "type": "integer", "value": "" } ], "id": "Room1", "isPattern": "false", "type": "Room" }, "statusCode": { "code": "200", "reasonPhrase": "OK" } } ] } I should also say that it's quite difficult to get fiware-orion to compile on Ubuntu, and that's the reason why I'm using docker. |
Created question in FIWARE Q/A platform on 14-04-2016 at 15:04 {color: red}Please, ANSWER this question AT{color} http://stackoverflow.com/questions/36624433/subscriptions-dont-seem-to-work-using-dockerized-fiware-orion +Question:+ Subscriptions don't seem to work using dockerized fiware-orion +Description:+ I'm using Fiware-Orion ContextBroker 0.28, the dockerized version in my localhost on ubuntu 15.10 64 bits. $ curl localhost:1026/version { "orion" : { "version" : "0.28.0-next", "uptime" : "0 d, 0 h, 0 m, 6 s", "git_hash" : "067e13618c247daa4af61f82d7831f3015d9eb5d", "compile_time" : "Mon Mar 14 13:04:02 UTC 2016", "compiled_by" : "root", "compiled_in" : "838a42ae8431" } } The docker configuration I'm using is: $ cat docker-compose.yml mongo: image: mongo:2.6 command: --smallfiles --nojournal orion: image: fiware/orion links: - mongo ports: - "1026:1026" command: -dbhost mongo The warning I get from orion/docker when I do the subscriptions is: orion_1 | WARNING@12:19:14 AlarmManager.cpp[303]: Raising alarm NotificationError localhost:1028/accumulate: (curl_easy_perform failed: Couldn't connect to server) I'm following the API V1 walkthorugh to test subscriptions to changes. I start with a mint new dockerized (sudo docker-compose up and all that fuzz) fiware-orion 0.28 with mongodb. Then I start the accumulator $ ./accumulator-server.py 1028 /accumulate localhost on verbose mode is on * Running on http://localhost:1028/ (Press CTRL+C to quit) Then I register Room1 $ (curl localhost:1026/v1/updateContext -s -S --header 'Content-Type: application/json' \ > --header 'Accept: application/json' -d @- | python -mjson.tool) <<EOF > { > "contextElements": [ > { > "type": "Room", > "isPattern": "false", > "id": "Room1", > "attributes": [ > { > "name": "temperature", > "type": "float", > "value": "23" > }, > { > "name": "pressure", > "type": "integer", > "value": "720" > } > ] > } > ], > "updateAction": "APPEND" > } > EOF { "contextResponses": [ { "contextElement": { "attributes": [ { "name": "temperature", "type": "float", "value": "" }, { "name": "pressure", "type": "integer", "value": "" } ], "id": "Room1", "isPattern": "false", "type": "Room" }, "statusCode": { "code": "200", "reasonPhrase": "OK" } } ] } Then I test query context just to check: $ (curl localhost:1026/v1/queryContext -s -S --header 'Content-Type: application/json' \ > --header 'Accept: application/json' -d @- | python -mjson.tool) <<EOF > { > "entities": [ > { > "type": "Room", > "isPattern": "false", > "id": "Room1" > } > ] > } > EOF { "contextResponses": [ { "contextElement": { "attributes": [ { "name": "pressure", "type": "integer", "value": "720" }, { "name": "temperature", "type": "float", "value": "23" } ], "id": "Room1", "isPattern": "false", "type": "Room" }, "statusCode": { "code": "200", "reasonPhrase": "OK" } } ] } Then I do the subscription $ (curl localhost:1026/v1/subscribeContext -s -S --header 'Content-Type: application/json' \ > --header 'Accept: application/json' -d @- | python -mjson.tool) <<EOF > { > "entities": [ > { > "type": "Room", > "isPattern": "false", > "id": "Room1" > } > ], > "attributes": [ > "pressure" > ], > "reference": "http://localhost:1028/accumulate", > "duration": "P1M", > "notifyConditions": [ > { > "type": "ONCHANGE", > "condValues": [ > "pressure" > ] > } > ], > "throttling": "PT5S" > } > EOF { "subscribeResponse": { "duration": "P1M", "subscriptionId": "570f8ac247fcf8a62722353c", "throttling": "PT5S" } } At this point the manual says that the accumulator might receive a first update but it's not required, so I don't receive nothing but maybe that's OK. Or maybe not, because after sending the subscription query, orion's docker says: orion_1 | WARNING@12:19:14 AlarmManager.cpp[303]: Raising alarm NotificationError localhost:1028/accumulate: (curl_easy_perform failed: Couldn't connect to server) Finally I update the entity and I should receive the update on the accumulator, but I don't: $ (curl localhost:1026/v1/updateContext -s -S --header 'Content-Type: application/json' \ > --header 'Accept: application/json' -d @- | python -mjson.tool) <<EOF > { > "contextElements": [ > { > "type": "Room", > "isPattern": "false", > "id": "Room1", > "attributes": [ > { > "name": "temperature", > "type": "float", > "value": "56.5" > }, > { > "name": "pressure", > "type": "integer", > "value": "553" > } > ] > } > ], > "updateAction": "UPDATE" > } > EOF { "contextResponses": [ { "contextElement": { "attributes": [ { "name": "temperature", "type": "float", "value": "" }, { "name": "pressure", "type": "integer", "value": "" } ], "id": "Room1", "isPattern": "false", "type": "Room" }, "statusCode": { "code": "200", "reasonPhrase": "OK" } } ] } I should also say that it's quite difficult to get fiware-orion to compile on Ubuntu, and that's the reason why I'm using docker. |
Summary | [fiware-stackoverflow] Subscriptions don't seem to work using dockerized fiware-orion | FIWARE.Question.Tech.Subscriptions don't seem to work using dockerized fiware-orion. |
HD-Enabler | Unknown [ 10910 ] | |
HD-Chapter | Unknown [ 10845 ] | |
HD-Node | Unknown [ 10852 ] |
Resolution | Done [ 10000 ] | |
Status | In Progress [ 3 ] | Closed [ 6 ] |
Status | Open [ 1 ] | In Progress [ 3 ] |
HD-Enabler | Unknown [ 10910 ] | |
HD-Chapter | Unknown [ 10845 ] | |
HD-Node | Unknown [ 10852 ] |
Field | Original Value | New Value |
---|---|---|
Component/s | FIWARE-TECH-HELP [ 10278 ] |
2016-04-15 12:12|UPDATED status: transition Finish| # answers= 2, accepted answer= True