Fiware Cepheus broker未将更新转发到Cepheus CEP时出错

Fiware Cepheus broker未将更新转发到Cepheus CEP时出错,fiware,complex-event-processing,Fiware,Complex Event Processing,我将Cepheus GE用于我的用例,并在多租户模式下启用它,并将我的config.json文件上载到它,但当我开始向Cepheus broker发送更新以将其转发到CEP时,Cepheus代理只接收更新,但不将其转发给Cepheus cap,因为它无法识别在config.json中设置的服务和服务路径。当我试图将我的更新直接发送到Cepheus CEP时,它接受并成功地处理了它们。所以我想知道为什么Cepheus代理在多租户模式下启用Fiware服务时无法识别它 配置文件服务定义如下 "bro

我将Cepheus GE用于我的用例,并在多租户模式下启用它,并将我的
config.json
文件上载到它,但当我开始向Cepheus broker发送更新以将其转发到CEP时,Cepheus代理只接收更新,但不将其转发给Cepheus cap,因为它无法识别在
config.json
中设置的服务和服务路径。当我试图将我的更新直接发送到Cepheus CEP时,它接受并成功地处理了它们。所以我想知道为什么Cepheus代理在多租户模式下启用Fiware服务时无法识别它

配置文件服务定义如下

"brokers":[
    {
      "url":"http://XXX.XX.XX.XX:1026",
      "serviceName": "f",
      "servicePath": "/f",
      "authToken": "XXX"
    }
]
这是Cepheus broker的日志

2017-09-02 08:55:32,546 [/O dispatcher 1] WARN  c.o.c.b.c.NgsiController - NotifyContext failed for http://localhost:8080/ngsi10/notifyContext$
2017-09-02 09:05:33,358 [nio-8081-exec-1] WARN  c.o.c.b.c.NgsiController - UpdateContext failed for http://localhost:8082: Connection refused
java.net.ConnectException: Connection refused
    at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) ~[na:1.8.0_72-internal]
    at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717) ~[na:1.8.0_72-internal]
    at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvent(DefaultConnectingIOReactor.java:173) ~[httpcore-nio-4.4.1.$
    at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvents(DefaultConnectingIOReactor.java:147) ~[httpcore-nio-4.4.1$
    at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:350) ~[httpcore-nio-4.4.1.j$
    at org.apache.http.impl.nio.conn.PoolingNHttpClientConnectionManager.execute(PoolingNHttpClientConnectionManager.java:191) ~[httpasync$
    at org.apache.http.impl.nio.client.CloseableHttpAsyncClientBase$1.run(CloseableHttpAsyncClientBase.java:64) ~[httpasyncclient-4.1.jar!$
    at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_72-internal]

java.net.ConnectException: Connection refused
    at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) ~[na:1.8.0_72-internal]
    at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717) ~[na:1.8.0_72-internal]
    at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvent(DefaultConnectingIOReactor.java:173) ~[httpcore-nio-4.4.1.$
    at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvents(DefaultConnectingIOReactor.java:147) ~[httpcore-nio-4.4.1$
    at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:350) ~[httpcore-nio-4.4.1.j$
    at org.apache.http.impl.nio.conn.PoolingNHttpClientConnectionManager.execute(PoolingNHttpClientConnectionManager.java:191) ~[httpasync$
    at org.apache.http.impl.nio.client.CloseableHttpAsyncClientBase$1.run(CloseableHttpAsyncClientBase.java:64) ~[httpasyncclient-4.1.jar!$
    at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_72-internal]
2017-09-02 09:33:12,316 [pool-2-thread-1] WARN  c.o.c.b.c.NgsiController - UpdateContext failed for http://localhost:8082: Connection refused
java.net.ConnectException: Connection refused
    at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) ~[na:1.8.0_72-internal]
    at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717) ~[na:1.8.0_72-internal]
    at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvent(DefaultConnectingIOReactor.java:173) [httpcore-nio-4.4.1.j$
    at org.apache.http.impl.nio.reactor.DefaultConnectingIOReactor.processEvents(DefaultConnectingIOReactor.java:147) [httpcore-nio-4.4.1.$
    at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor.execute(AbstractMultiworkerIOReactor.java:350) ~[httpcore-nio-4.4.1.j$
    at org.apache.http.impl.nio.conn.PoolingNHttpClientConnectionManager.execute(PoolingNHttpClientConnectionManager.java:191) ~[httpasync$
    at org.apache.http.impl.nio.client.CloseableHttpAsyncClientBase$1.run(CloseableHttpAsyncClientBase.java:64) ~[httpasyncclient-4.1.jar!$
    at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_72-internal]
发送更新的脚本文件如下所示

(curl XXX.XXX.XXX.XXX:8081/v1/updateContext/ -s -S --header 'Content-Type: application/json'  --header "Fiware-Service: f" --header  "Fiware-ServicePath:/f " --header 'Accept: application/json' -d @- | python -mjson.tool ) <<EOF

{ "contextElements": [
    {
        "type": "Lab",
        "isPattern": "false",
        "id": "Lab111",
        "attributes": [
        {
            "name": "priority",
            "type": "double",
            "value": "1"
        },                              
        {
            "name": "controller",
            "type": "string",
            "value": "Controller111"
        }
        ]
    }
],
    "updateAction": "UPDATE"
}
EOF

(curl XXX.XXX.XXX.XXX:8081/v1/updateContext/-s-s--header'Content Type:application/json'--header“Fiware服务:f”---header“Fiware服务路径:/f”--header'Accept:application/json'-d@-| python-mjson.tool)从今天起,Fiware Cepheus代理不支持多租户请求(使用
Fiware服务
Fiware服务路径
头),只有CEP可以处理多租户。更一般地说,与成熟的代理(如Orion)相比,代理的功能很少


如果您需要多租户代理,请使用Orion上下文代理:

从今天起,Fiware Cepheus代理不支持多租户请求(使用
Fiware Service
Fiware ServicePath
头),只有CEP可以处理多租户。更一般地说,与Orion这样的成熟经纪人相比,该经纪人几乎没有什么功能


如果您需要多租户代理,请使用Orion上下文代理:

@Marc您有什么想法吗?@Marc您有什么想法吗?我尝试将Orion上下文代理用于具有CEP的多租户代理,但Orion中的任何更改都无法到达CEP当我订阅Orion时,我在***cepheus的请求中遇到此错误不支持方法“POST”***我尝试将Orion上下文代理用于具有CEP的多租户代理,但Orion中的任何更改均未达到CEP如何以正确的方式将CEP与Orion连接当我订阅Orion时,我在***cepheus请求方法“POST”中遇到此错误不支持***