2016-10-18 3 views
0
  1. 내 APIM 버전은 1.10.0이고 DAS는 3.0.1입니다.WSO2 DAS + 클러스터링 APIM with mysql

  2. 처음에는 mysql을 사용하여 클러스터링 APIM + DAS를 배포하지 않았습니다. 통계는 좋아 보인다. 이어서

  3. , I는 게시자 저장소의 KeyManager로 APIM 클러스터링 및 gateway.Configured APIM 및 DAS는 I가 API를 호출 할 때, 게이트웨이 노드는 다음 에러 표시, this article 주문

[2016-10-13 11:13:54,775] ERROR - APIMgtUsageHandler Cannot publish event. null 
java.lang.NullPointerException 
     at org.wso2.carbon.apimgt.usage.publisher.APIMgtUsageDataBridgeDataPublisher.publishEvent(APIMgtUsageDataBridgeDataPublisher.java:124) 
     at org.wso2.carbon.apimgt.usage.publisher.APIMgtUsageHandler.handleRequest(APIMgtUsageHandler.java:169) 
     at org.apache.synapse.rest.API.process(API.java:322) 
     at org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:86) 
     at org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:65) 
     at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:295) 
     at org.apache.synapse.core.axis2.SynapseMessageReceiver.receive(SynapseMessageReceiver.java:83) 
     at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) 
     at org.apache.synapse.transport.passthru.ServerWorker.processNonEntityEnclosingRESTHandler(ServerWorker.java:317) 
     at org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:149) 
     at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
     at java.lang.Thread.run(Thread.java:745) 
[2016-10-13 11:13:54,807] ERROR - APIMgtResponseHandler Cannot publish response event. null 
java.lang.NullPointerException 
     at org.wso2.carbon.apimgt.usage.publisher.APIMgtUsageDataBridgeDataPublisher.publishEvent(APIMgtUsageDataBridgeDataPublisher.java:140) 
     at org.wso2.carbon.apimgt.usage.publisher.APIMgtResponseHandler.mediate(APIMgtResponseHandler.java:211) 
     at org.apache.synapse.mediators.ext.ClassMediator.mediate(ClassMediator.java:84) 
     at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:81) 
     at org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:48) 
     at org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:155) 
     at org.apache.synapse.rest.Resource.process(Resource.java:297) 
     at org.apache.synapse.rest.API.process(API.java:335) 
     at org.apache.synapse.rest.RESTRequestHandler.dispatchToAPI(RESTRequestHandler.java:86) 
     at org.apache.synapse.rest.RESTRequestHandler.process(RESTRequestHandler.java:52) 
     at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis2SynapseEnvironment.java:295) 
     at org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(SynapseCallbackReceiver.java:529) 
     at org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCallbackReceiver.java:172) 
     at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180) 
     at org.apache.synapse.transport.passthru.ClientWorker.run(ClientWorker.java:251) 
     at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:172) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
     at java.lang.Thread.run(Thread.java:745) 
  1. 그러면 DAS 구성 방식이 바뀝니다.
[2016-10-18 11:31:39,131] INFO - ReceiverGroup Resending the failed published data... 
[2016-10-18 11:31:44,134] WARN - AccessConfiguration Error loading properties from file: access-log.properties 
[2016-10-18 11:31:44,207] INFO - TimeoutHandler This engine will expire all callbacks after : 120 seconds, irrespective of the timeout 
  • I
      을 : this blog에 따라, 나는 오류없이 stats.And 저장소 노드 쇼 정보가없는 모든 API를-manager.xml 구성 구글 이유는, wso2 jira에, 그들은 이것이 버그가 아니라고 말합니다.

    그러나 몇 시간 동안 통계를 기다릴 수 없습니다. 내가 잘못 구성 했습니까?

    Reguards.

  • +1

    DAS 관리 콘솔에 로그인하여 DAS 테이블을 탐색 할 수 있습니까? 데이터 익스플로러 메뉴에서 org.wso2.apimgt.statistics.request 테이블을 검색 할 수있다. /repository/deployment/server/carbonapps/dir – ruks

    +0

    에 Capp를 배포했는지 확인하십시오. ORG_WSO2_APIMGT_STATISTICS_WORKFLOW 테이블이 데이터를 가져 오는 것을 제외하고 데이터 탐색기 메뉴의 org.wso2.apimgt.statistics.request 테이블에 데이터가 없습니다. . /repository/deployment/server/carbonapps /는 API_Manager_Analytics_RDBMS.car입니다. 분배 된 APIM이 없습니다. 게시자와 상점에서 통계를 얻을 수 있습니다. 배포 할 때 통계가 없습니다 –

    답변

    0

    저장소 노드에있는 것처럼 보이며 데이터가 게시되고 작동 중입니다. 그러나 게이트웨이 노드 데이터는 공개되지 않습니다. 게이트웨이 노드 구성을 확인하십시오. 또한 게이트웨이 노드가 DAS 노드에 액세스 할 수 있는지 확인하십시오.

    +0

    감사합니다. ruks. 저장소 및 게이트웨이 노드의 api-manager.xml 구성은 동일합니다. 다른 구성이 있습니까? 게이트웨이 노드가 DAS 노드에 액세스 할 수 있는지 확인하려면 어떻게합니까? 2 단계에서 DAS를 사용할 수 있음을 증명할 수 있습니까? 아니면 DAS 수신자가 메시지를받지 못했습니까? –

    +0

    api를 호출 한 후 DAS에 분산 된 APIM을 사용하지 않습니다. 통계가 있습니다. 그런 다음 APIM을 DISTRIBUTED로 변경 한 다음 다른 API를 호출합니다. 통계에 SubscriberCount가 표시되지만 조회수는 표시되지 않습니다. –

    +0

    그러나 데이터 탐색기 메뉴의 DAS 관리 콘솔에서 새 invoke api DATA를 찾을 수 없습니다. 게이트웨이에서 보낼 수 없거나 DAS에서 수신 할 수 없습니까? –