Orion: Не приходят уведомления на сервер Аккумулятора

Я подписан на сущность в Cosmos (подписка ontimeinterval), до этого я запускал сервер-аккумулятор с помощью этих команд:

# cd /usr/share/contextBroker/tests
# ./accumulator-server.py 1028 /accumulate on

Это запрос, который я отправляю:

curl orion.lab.fi-ware.org:1026/NGSI9/subscribeContextAvailability -s -S --header 'Content-Type: application/json' --header 'Accept: application/json' \--header "X-Auth-Token: $AUTH_TOKEN" -d @notificate.json

Проблема в том, что я не получаю уведомления на сервере (интервал 10 секунд и 1 месяц).

Что я делаю не так? Спасибо


person adrian    schedule 28.08.2014    source источник


Ответы (1)


Здесь немного сложно помочь без некоторых подробностей. Давайте проясним несколько вещей с вопросом:

У вас есть активная подписка ONTIMEINTERVAL в вашем Orion Context Broker, отправляющая уведомления на хост, где вы запускаете свой аккумулятор, и на порт 1028. Подписка имеет интервал в десять секунд, а продолжительность составляет один месяц. Аккумулятор запускается правильно, но вы не видите уведомлений, используя curl localhost:1028/dump. Это верно?

Теперь первое, что вы должны сделать, это убедиться, что брокер работает, отправив ему «curl localhost:1026/version» (если брокер запущен на порту 1026 по умолчанию). Вы должны получить ответ в формате XML с некоторой общей информацией о работающем брокере. Само содержание сообщения пока не так интересно, только то, что отвечает брокер.

Следующее, что нужно сделать, это убедиться, что подписка есть. К сожалению, сам брокер не может сообщить список активных подписок.

Вам нужно будет ввести mongo (при условии, что mongod запущен! :-)) чтобы убедиться, что ваша подписка есть:

% mongo
mongo> use orion
mongo> db.csubs.find()
mongo> quit()

Среди подписок вы должны найти свою со ссылкой «[ваш хост]: 1028/накопить».

Обратите особое внимание на поле «срок действия» (в секундах Unix), возможно, срок действия вашей подписки истек? Кроме того, может быть интересно «дросселирование» — убедитесь, что «дросселирование» имеет низкое значение — 1-10.

Хорошо, это все, о чем я могу думать на данный момент. Удачи, и дайте мне/нам знать, что вы найдете.

person kzangeli    schedule 29.08.2014
comment
Привет! kzangeli, спасибо за ответ. Я отредактировал свой пост с запросом. Как видите, я не использую локальный хост в своем запросе, потому что мне нужна подписка на объект, который в настоящее время находится в Cosmos. В «localhost» у меня есть сервер-аккумулятор. Он еще не запущен :( - person adrian; 01.09.2014
comment
@adrian, пожалуйста, отредактируйте свой вопрос, включив в него также содержимое файла notificate.json, так как после просмотра вашей команды curl он содержит фактическую информацию о подписке. - person fgalan; 08.09.2014