2016-05-16 5 views
1

Я настроил диспетчер API для отправки данных на сервер аналитики данных WSO2.WSO2 менеджер api не отправляет данные на WSO2 DAS (сервер аналитики данных)

Моя конфигурация на сервере API является:

событий конфигурации приемника: {TCP: //wso2-dac-svc.libre-dev.com: 7611} данных конфигурации анализатора: https://wso2-dac-svc.libre-dev.com:8443

На DAC сервером я установил API_Manager_Analytics.car, который имеет определения приемника событий.

На сервере API я импортировал сертификат с сервера DAC с помощью keytool. Я перезапустил оба сервера.

Я вижу следующее сообщение об ошибке в журнале:

TID: [-1] [] [2016-05-16 16:06:11,417] ERROR {org.wso2.carbon.databridge.agent.thrift.AsyncDataPublisher} - Error while connection to event receiver {org.wso2.carbon.databridge.agent.thrift.AsyncDataPublisher} 
org.wso2.carbon.databridge.commons.exception.AuthenticationException: Access denied for user admin to login TCP,wso2-dac-svc.libre-dev.com:7611,TCP,wso2-dac-svc.libre-dev.com:7711 
     at org.wso2.carbon.databridge.agent.thrift.internal.publisher.authenticator.AgentAuthenticator.connect(AgentAuthenticator.java:54) 
     at org.wso2.carbon.databridge.agent.thrift.DataPublisher.start(DataPublisher.java:273) 
     at org.wso2.carbon.databridge.agent.thrift.DataPublisher.<init>(DataPublisher.java:161) 
     at org.wso2.carbon.databridge.agent.thrift.AsyncDataPublisher$ReceiverConnectionWorker.run(AsyncDataPublisher.java:843) 
     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.wso2.carbon.databridge.agent.thrift.exception.AgentAuthenticatorException: Thrift exception 
     at org.wso2.carbon.databridge.agent.thrift.internal.publisher.authenticator.ThriftAgentAuthenticator.connect(ThriftAgentAuthenticator.java:51) 
     at org.wso2.carbon.databridge.agent.thrift.internal.publisher.authenticator.AgentAuthenticator.connect(AgentAuthenticator.java:51) 
     ... 8 more 
Caused by: org.apache.thrift.transport.TTransportException: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: No trusted certificate found 
     at org.apache.thrift.transport.TIOStreamTransport.write(TIOStreamTransport.java:147) 
     at org.apache.thrift.protocol.TBinaryProtocol.writeI32(TBinaryProtocol.java:163) 
     at org.apache.thrift.protocol.TBinaryProtocol.writeMessageBegin(TBinaryProtocol.java:91) 
     at org.apache.thrift.TServiceClient.sendBase(TServiceClient.java:62) 
     at org.wso2.carbon.databridge.commons.thrift.service.secure.ThriftSecureEventTransmissionService$Client.send_connect(ThriftSecureEventTransmissionService.java:82) 
     at org.wso2.carbon.databridge.commons.thrift.service.secure.ThriftSecureEventTransmissionService$Client.connect(ThriftSecureEventTransmissionService.java:73) 
     at org.wso2.carbon.databridge.agent.thrift.internal.publisher.authenticator.ThriftAgentAuthenticator.connect(ThriftAgentAuthenticator.java:47) 
     ... 9 more 
Caused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: No trusted certificate found 
     at sun.security.ssl.Alerts.getSSLException(Alerts.java:192) 
     at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1949) 
     at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:302) 
     at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:296) 
     at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1509) 
     at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216) 
     at sun.security.ssl.Handshaker.processLoop(Handshaker.java:979) 
     at sun.security.ssl.Handshaker.process_record(Handshaker.java:914) 
     at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062) 
     at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375) 
     at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:747) 
     at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:123) 
     at org.apache.thrift.transport.TIOStreamTransport.write(TIOStreamTransport.java:145) 
     ... 15 more 
Caused by: sun.security.validator.ValidatorException: No trusted certificate found 
     at sun.security.validator.SimpleValidator.buildTrustedChain(SimpleValidator.java:394) 
     at sun.security.validator.SimpleValidator.engineValidate(SimpleValidator.java:133) 
     at sun.security.validator.Validator.validate(Validator.java:260) 
     at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:324) 
     at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:229) 
     at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:124) 
     at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1491) 
     ... 23 more 
TID: [-1] [] [2016-05-16 16:06:41,363] ERROR {org.wso2.carbon.databridge.agent.thrift.AsyncDataPublisher} - Reconnection failed fortcp://wso2-dac-svc.libre-dev.com:7611 {org.wso2.carbon.databridge.agent.thrift.AsyncDataPublisher} 
TID: [-1] [] [2016-05-16 16:07:11,004] WARN {org.apache.synapse.core.axis2.TimeoutHandler} - Expiring message ID : urn:uuid:6ed9fae5-d1fb-4cdf-885b-e101e79faf40; dropping message after timeout of : 30 seconds {org.apache.synapse.core.axis2.TimeoutHandler} 
TID: [-1] [] [2016-05-16 16:07:11,371] ERROR {org.wso2.carbon.databridge.agent.thrift.AsyncDataPublisher} - Reconnection failed fortcp://wso2-dac-svc.libre-dev.com:7611 {org.wso2.carbon.databridge.agent.thrift.AsyncDataPublisher} 
TID: [-1] [] [2016-05-16 16:07:34,514] WARN {org.apache.synapse.transport.passthru.TargetHandler} - http-outgoing-9: Connection time out while in state: REQUEST_DONE {org.apache.synapse.transport.passthru.TargetHandler} 

В принципе я не могу получить статистику API отправляются на сервер DAS. Любая помощь приветствуется.

+0

Вы изменили файлы хранилища ключей/файлов доверия в APIM или DAS? –

+0

Сервер WSO2 DAS представлял себя локальным хостом, поэтому панель управления не работала, поэтому мне пришлось создать новый сертификат и заменить его в wso2carbon.jks и client-truststore.jks. –

+0

Итак, ваша проблема решена? –

ответ

0

Основываясь на журнал ошибок вопрос, кажется, остроумие

Паспорта аналитический сервер бережливость работает на порту 7711 использует «wso2carbon.jks» находится в/хранилище/ресурсов/безопасности путем deault. В результате, когда нам нужно настроить это на /repository/conf/carbon.xml, как показано ниже

<Security> <br> 
    <!--<br> 
     KeyStore which will be used for encrypting/decrypting passwords<br> 
     and other sensitive information. 
    --><br> 
    <KeyStore><br> 
     <!-- Keystore file location--><br> 
     <Location>${carbon.home}/repository/resources/security/wso2carbon.jks</Location><br> 
     <!-- Keystore type (JKS/PKCS12 etc.)--><br> 
     <Type>JKS</Type><br> 
     <!-- Keystore password--><br> 
     <Password>wso2carbon</Password> 
     <!-- Private Key alias--><br> 
     <KeyAlias>wso2carbon</KeyAlias> 
     <!-- Private Key password--> 
     <KeyPassword>wso2carbon</KeyPassword><br> 
    </KeyStore><br> 

Для добавления нового хранилища ключей используйте, пожалуйста, приведенные ниже пункты
1. Поместите ключ магазин в «/ repository/resources/security/'
2. Обновите раздел «Безопасность/KeyStore /» /repository/conf/carbon.xml соответственно
3. Обновите ссылки хранилища ключей для data-agent-config.xml соответственно
4. Импортируйте сертификат нового хранилища ключей в хранилище доверия ESB, расположенное в /repository/resources/security/client-truststore.jks.

Наконец, после изменения секретного ключа его соответствующий сертификат следует импортировать в хранилище доверия API-менеджера, расположенное в /repository/resources/security/client-truststore.jks.

Надеемся, что эти шаги будут сортировать проблемы в данном журнале ошибок.