«Время ожидания чтения» между wso2 APIM и APIM-Analytics - PullRequest
0 голосов
/ 25 апреля 2019

Canario: APIM и APIM-Analytics (оба в 2.6.0) на одном локальном компьютере.Identity Server на другом компьютере Используйте документ для настройки между APIM и Analytics.Настройте источники данных для внешнего экземпляра БД Oracle: нормально, нормально запускается, аналитик запускается нормально, панель аналитики запускается нормально, менеджер аналитики запускается нормально

После настройки по умолчанию Apim запускается с проблемой соединения:

...

ERROR{org.wso2.carbon.databridge.agent.endpoint.DataEndpointConnectionWorker} -  
          Error while trying to connect to the endpoint. Cannot borrow client for 
          ssl://localhost:7712. 
          {org.wso2.carbon.databridge.agent.endpoint.DataEndpointConnectionWorker}
          org.wso2.carbon.databridge.agent.exception.DataEndpointLoginException: 
          Cannot borrow client for ssl://localhost:7712.
                at 
        org.wso2.carbon.databridge.agent.endpoint.DataEndpointConnectionWorker.connect(DataEndpointConnectionWorker.java:134)
                at org.wso2.carbon.databridge.agent.endpoint.DataEndpointConnectionWorker.run(DataEndpointConnectionWorker.java:59)
                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:1149)
                at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
                at java.lang.Thread.run(Thread.java:748)
        Caused by: org.wso2.carbon.databridge.agent.exception.DataEndpointLoginException: Error while trying to login to the data receiver.
                at org.wso2.carbon.databridge.agent.endpoint.thrift.ThriftDataEndpoint.login(ThriftDataEndpoint.java:54)
                at org.wso2.carbon.databridge.agent.endpoint.DataEndpointConnectionWorker.connect(DataEndpointConnectionWorker.java:128)
                ... 6 more
        Caused by: org.apache.thrift.transport.TTransportException: java.net.SocketTimeoutException: Read timed out
                at org.apache.thrift.transport.TIOStreamTransport.flush(TIOStreamTransport.java:161)
                at org.apache.thrift.TServiceClient.sendBase(TServiceClient.java:65)
                at org.wso2.carbon.databridge.commons.thrift.service.secure.ThriftSecureEventTransmissionService$Client.send_connect(ThriftSecureEventTransmissionService.java:104)
                at org.wso2.carbon.databridge.commons.thrift.service.secure.ThriftSecureEventTransmissionService$Client.connect(ThriftSecureEventTransmissionService.java:95)
                at org.wso2.carbon.databridge.agent.endpoint.thrift.ThriftDataEndpoint.login(ThriftDataEndpoint.java:47)
                ... 7 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:171)
                at java.net.SocketInputStream.read(SocketInputStream.java:141)
                at sun.security.ssl.InputRecord.readFully(InputRecord.java:465)
                at sun.security.ssl.InputRecord.read(InputRecord.java:503)
                at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:975)
                at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1367)
                at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:750)
                at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:123)
                at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
                at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
                at org.apache.thrift.transport.TIOStreamTransport.flush(TIOStreamTransport.java:159)
                ... 11 more
    ...

Когда у меня был доступ к консолям Analytics (PUBLISHER, STORE или ADMIN), интерфейс аналитики использования API застрял.

Я пытаюсь внести несколько изменений в api-manager.xml.Теперь часть ANALYTICS выглядит следующим образом:

    <!-- Enable Analytics for API Manager -->
    <Enabled>true</Enabled>

    <StreamProcessorServerURL>{tcp://localhost:7612}</StreamProcessorServerURL>
    <!--StreamProcessorAuthServerURL>{ssl://localhost:7712}</StreamProcessorAuthServerURL-->
    <!-- Administrator username to login to the remote StreamProcessor server. -->
    <StreamProcessorUsername>admin</StreamProcessorUsername>
    <!-- Administrator password to login to the remote StreamProcessor server. -->
    <StreamProcessorPassword>admin</StreamProcessorPassword>

    <!-- For APIM implemented Statistic client for RDBMS -->
    <StatsProviderImpl>org.wso2.carbon.apimgt.usage.client.impl.APIUsageStatisticsRestClientImpl</StatsProviderImpl>

   <!-- StreamProcessor REST API configuration -->
    <StreamProcessorRestApiURL>https://localhost:9444</StreamProcessorRestApiURL>
    <StreamProcessorRestApiUsername>admin</StreamProcessorRestApiUsername>
    <StreamProcessorRestApiPassword>admin</StreamProcessorRestApiPassword>

Я ожидаю узнать, почему это происходит, если я буду следовать документации по умолчанию (https://docs.wso2.com/display/AM260/Configuring+APIM+Analytics) спасибо

1 Ответ

0 голосов
/ 02 мая 2019

Эта проблема была решена путем импорта сертификата Analytics в wso2carbon.jks и client-truststore.jks. В начале я просто импортирую в client-truststore.jks и скучаю по wso2carbon.jks. Важно использовать полное имя для создания новых сертификатов и хранилища ключей, а также для правильной связи между инструментами в api-manager.xml. Не забудьте добавить полное имя в файл hosts.

Спасибо

...