Невозможно записать в удаленный экземпляр mongodb из потока обработки wso2 - PullRequest
2 голосов
/ 17 мая 2019

Я запускаю приложение siddhi, которое прослушивает события и записывает их в экземпляр mongodb, работающий на удаленной машине. Экземпляр mongo db имеет базовую настройку аутентификации (имя пользователя, пароль). Я попытался подключиться к экземпляру mongodb и записать события в коллекцию, в журналах я вижу, что wso2 может подключаться к удаленному экземпляру

[2019-05-17 12:30:25,753]  INFO {org.mongodb.driver.cluster} - Cluster created with settings {hosts=[10.x.x.xxx:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
[2019-05-17 12:30:25,763]  INFO {org.mongodb.driver.cluster} - Cluster created with settings {hosts=[10.x.x.xxx:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
[2019-05-17 12:30:25,765]  INFO {org.wso2.carbon.siddhi.editor.core.internal.WorkspaceDeployer} - Siddhi App xxxxxxxxxx successfully deployed.
[2019-05-17 12:30:26,017]  INFO {org.mongodb.driver.connection} - Opened connection [connectionId{localValue:430, serverValue:1009}] to 10.x.x.xxx:27017
[2019-05-17 12:30:26,018]  INFO {org.mongodb.driver.connection} - Opened connection [connectionId{localValue:432, serverValue:1010}] to 10.x.x.xxx:27017

Когда я пытаюсь записать в mongodb, я получаю следующую ошибку

[2019-05-17 12:30:35,334] ERROR {org.wso2.siddhi.core.SiddhiAppRuntime} - Error starting Siddhi App 'IntegrationTesting', triggering shutdown process. Error on 'IntegrationTesting'. Error in retrieving collection names from the database 'IntegrationTesting' : Command failed with error 13: 'command listCollections requires authentication' on server 10.x.x.xxx:27017. The full response is { "ok" : 0.0, "errmsg" : "command listCollections requires authentication", "code" : 13, "codeName" : "Unauthorized" }

Я попытался добавить имя пользователя и пароль в приложение siddhi @store () а также попытался добавить источник данных в /conf/worker/deployment.yaml. В обоих случаях я получаю одинаковую ошибку.

Пожалуйста, помогите.

С уважением и благодарностью,

Чайтанья Кумар.С

Data Scientist - Koinearth .

1 Ответ

1 голос
/ 19 мая 2019

Как вы настраивали учетные данные, расширение MongoDB ожидает, что имя пользователя и пароль будут вставлены в URI.

@Store(type="mongodb",mongodb.uri="mongodb://admin:admin@localhost/Foo")

https://siddhi -io.github.io / siddhi-store-mongodb/api/1.1.0/

Обновление: разрешение на чтение на adminDB и разрешение на запись требуется

...