WSO2 API 管理器抛出无法将事件发送到端点错误
WSO2 API Manager throw Unable to send events to the endpoint errors
在我们的部署中(WSO2 API manager 2.0.0 All-in-One 2 node clustered with separate WSO2 DAS server),由于 SVN 存储库已损坏,depsync 出现问题。该问题已解决,但现在我们注意到 wso2carbon.log 中重复出现以下错误。
[2017-02-08 02:55:43,229] ERROR - DataEndpoint Unable to send events to the endpoint.
org.wso2.carbon.databridge.agent.exception.DataEndpointException: Cannot send Events
at org.wso2.carbon.databridge.agent.endpoint.thrift.ThriftDataEndpoint.send(ThriftDataEndpoint.java:83)
at org.wso2.carbon.databridge.agent.endpoint.DataEndpoint$EventPublisher.publish(DataEndpoint.java:330)
at org.wso2.carbon.databridge.agent.endpoint.DataEndpoint$EventPublisher.run(DataEndpoint.java:283)
at java.lang.Thread.run(Thread.java:745)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.thrift.transport.TTransportException: java.net.SocketTimeoutException: Read timed out
at org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:129)
at org.apache.thrift.transport.TTransport.readAll(TTransport.java:86)
at org.apache.thrift.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:429)
at org.apache.thrift.protocol.TBinaryProtocol.readI32(TBinaryProtocol.java:318)
at org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:219)
at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:69)
at org.wso2.carbon.databridge.commons.thrift.service.general.ThriftEventTransmissionService$Client.recv_publish(ThriftEventTransmissionService.java:168)
at org.wso2.carbon.databridge.commons.thrift.service.general.ThriftEventTransmissionService$Client.publish(ThriftEventTransmissionService.java:155)
at org.wso2.carbon.databridge.agent.endpoint.thrift.ThriftDataEndpoint.send(ThriftDataEndpoint.java:76)
... 8 more
Caused by: java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:170)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
at org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:127)
... 16 more
因此我不确定是否与 SVN 存储库损坏有关,但是这个问题是我们在事件发生后观察到的。
澄清一下,这是指本地 thrift 服务器:
tcp 0 0 0.0.0.0:7611 0.0.0.0:* LISTEN 1549/java
tcp 0 0 0.0.0.0:7711 0.0.0.0:* LISTEN 1549/java
或 DAS thrift 服务器?
tcp 0 0 0.0.0.0:7612 0.0.0.0:* LISTEN 1560/java
tcp 0 0 0.0.0.0:7712 0.0.0.0:* LISTEN 1560/java
两者似乎都可用。
这个错误对系统有什么影响?
感谢任何帮助。谢谢
这是数据发布到DAS。检查从 APIM 到 DAS 节点的连接。如果 thrift 绑定 IP 与请求的 IP 不同,就会发生这种情况。
影响是数据没有发布到 DAS。
在我们的部署中(WSO2 API manager 2.0.0 All-in-One 2 node clustered with separate WSO2 DAS server),由于 SVN 存储库已损坏,depsync 出现问题。该问题已解决,但现在我们注意到 wso2carbon.log 中重复出现以下错误。
[2017-02-08 02:55:43,229] ERROR - DataEndpoint Unable to send events to the endpoint.
org.wso2.carbon.databridge.agent.exception.DataEndpointException: Cannot send Events
at org.wso2.carbon.databridge.agent.endpoint.thrift.ThriftDataEndpoint.send(ThriftDataEndpoint.java:83)
at org.wso2.carbon.databridge.agent.endpoint.DataEndpoint$EventPublisher.publish(DataEndpoint.java:330)
at org.wso2.carbon.databridge.agent.endpoint.DataEndpoint$EventPublisher.run(DataEndpoint.java:283)
at java.lang.Thread.run(Thread.java:745)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.thrift.transport.TTransportException: java.net.SocketTimeoutException: Read timed out
at org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:129)
at org.apache.thrift.transport.TTransport.readAll(TTransport.java:86)
at org.apache.thrift.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:429)
at org.apache.thrift.protocol.TBinaryProtocol.readI32(TBinaryProtocol.java:318)
at org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:219)
at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:69)
at org.wso2.carbon.databridge.commons.thrift.service.general.ThriftEventTransmissionService$Client.recv_publish(ThriftEventTransmissionService.java:168)
at org.wso2.carbon.databridge.commons.thrift.service.general.ThriftEventTransmissionService$Client.publish(ThriftEventTransmissionService.java:155)
at org.wso2.carbon.databridge.agent.endpoint.thrift.ThriftDataEndpoint.send(ThriftDataEndpoint.java:76)
... 8 more
Caused by: java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:170)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
at org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:127)
... 16 more
因此我不确定是否与 SVN 存储库损坏有关,但是这个问题是我们在事件发生后观察到的。
澄清一下,这是指本地 thrift 服务器:
tcp 0 0 0.0.0.0:7611 0.0.0.0:* LISTEN 1549/java
tcp 0 0 0.0.0.0:7711 0.0.0.0:* LISTEN 1549/java
或 DAS thrift 服务器?
tcp 0 0 0.0.0.0:7612 0.0.0.0:* LISTEN 1560/java
tcp 0 0 0.0.0.0:7712 0.0.0.0:* LISTEN 1560/java
两者似乎都可用。
这个错误对系统有什么影响?
感谢任何帮助。谢谢
这是数据发布到DAS。检查从 APIM 到 DAS 节点的连接。如果 thrift 绑定 IP 与请求的 IP 不同,就会发生这种情况。
影响是数据没有发布到 DAS。