) ENGINE=InnoDB DEFAULT CHARSET=utf8;\r
\r
\r
-insert into db (name,host,login,pass,database) values ('Couchbase','dl_couchbase','dl','dl1234','datalake');\r
+insert into db (name,host,login,pass,`database`) values ('Couchbase','dl_couchbase','dl','dl1234','datalake');\r
insert into db (name,host) values ('Elasticsearch','dl_es');\r
-insert into db (name,host,port,database) values ('MongoDB','dl_mongodb',27017,'datalake');\r
+insert into db (name,host,port,`database`) values ('MongoDB','dl_mongodb',27017,'datalake');\r
insert into db (name,host) values ('Druid','dl_druid');\r
\r
\r
insert into `topic`(`name`,`enabled`) values ('__consumer_offsets',0);\r
\r
\r
+insert into `map_db_topic`(`db_name`,`topic_name`) values ('Couchbase','_DL_DEFAULT_');\r
+insert into `map_db_topic`(`db_name`,`topic_name`) values ('Elasticsearch','_DL_DEFAULT_');\r
insert into `map_db_topic`(`db_name`,`topic_name`) values ('MongoDB','_DL_DEFAULT_');\r
+insert into `map_db_topic`(`db_name`,`topic_name`) values ('Druid','_DL_DEFAULT_');\r
private int kafkaConsumerCount;
private boolean async;
+ private boolean enableSSL;
}
import org.bson.Document;
import org.json.JSONObject;
-
+import org.onap.datalake.feeder.config.ApplicationConfiguration;
import org.onap.datalake.feeder.domain.Db;
import org.onap.datalake.feeder.domain.Topic;
import org.slf4j.Logger;
import com.mongodb.client.MongoDatabase;
/**
- * Service to use MongoDB
+ * Service for using MongoDB
*
* @author Guobiao Mo
*
private final Logger log = LoggerFactory.getLogger(this.getClass());
+ @Autowired
+ private ApplicationConfiguration config;
+
@Autowired
private DbService dbService;
Builder builder = MongoClientOptions.builder();
builder.serverSelectionTimeout(30000);//server selection timeout, in milliseconds
-
+
//http://mongodb.github.io/mongo-java-driver/3.0/driver/reference/connecting/ssl/
- builder.sslEnabled(Boolean.TRUE.equals(mongodb.getEncrypt()));// getEncrypt() can be null
+ if (config.isEnableSSL()) {
+ builder.sslEnabled(Boolean.TRUE.equals(mongodb.getEncrypt()));// getEncrypt() can be null
+ }
MongoClientOptions options = builder.build();
- mongoClient = new MongoClient(new ServerAddress(host, port), credential, options);
- database = mongoClient.getDatabase(mongodb.getDatabase());
+ if (credential == null) {
+ mongoClient = new MongoClient(new ServerAddress(host, port), options);
+ } else {
+ mongoClient = new MongoClient(new ServerAddress(host, port), credential, options);
+ }
+ database = mongoClient.getDatabase(databaseName);
}
@PreDestroy
#spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mariadb://dl_mariadb:3306/datalake?autoReconnect=true&useUnicode=true&characterEncoding=UTF-8
-spring.datasource.username=nook
-spring.datasource.password=nook123
+spring.datasource.username=dl
+spring.datasource.password=dl1234
#For Beijing lab
#tolerate inconsistency when system crash, see PullThread.run()
async=true
+#SSL global flag, if enabled, still need to check each individual DB SSL flag
+enableSSL=false
+
#Logging
logging.level.org.springframework.web=ERROR
logging.level.com.att.nsa.apiClient.http=ERROR
<springcouchbase.version>3.1.2.RELEASE</springcouchbase.version>
<jackson.version>2.9.6</jackson.version>
<kafka.version>2.0.0</kafka.version>
- <elasticsearchjava.version>7.0.0-rc2</elasticsearchjava.version>
+ <elasticsearchjava.version>7.0.0</elasticsearchjava.version>
</properties>