mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-12-13 16:47:36 +08:00
fix: mogodb url connent
This commit is contained in:
parent
8e6430625c
commit
c2b0b01c78
@ -163,6 +163,9 @@ func checkMongo() error {
|
|||||||
client.Disconnect(context.TODO())
|
client.Disconnect(context.TODO())
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
if config.Config.Mongo.Uri != "" {
|
||||||
|
uri = config.Config.Mongo.Uri
|
||||||
|
} else {
|
||||||
mongodbHosts := ""
|
mongodbHosts := ""
|
||||||
for i, v := range config.Config.Mongo.Address {
|
for i, v := range config.Config.Mongo.Address {
|
||||||
if i == len(config.Config.Mongo.Address)-1 {
|
if i == len(config.Config.Mongo.Address)-1 {
|
||||||
@ -171,13 +174,23 @@ func checkMongo() error {
|
|||||||
mongodbHosts += v + ","
|
mongodbHosts += v + ","
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if config.Config.Mongo.Password != "" && config.Config.Mongo.Username != "" {
|
||||||
|
uri = fmt.Sprintf("mongodb://%s:%s@%s/%s?maxPoolSize=%d&authSource=admin",
|
||||||
|
config.Config.Mongo.Username, config.Config.Mongo.Password, mongodbHosts,
|
||||||
|
config.Config.Mongo.Database, config.Config.Mongo.MaxPoolSize)
|
||||||
|
} else {
|
||||||
|
uri = fmt.Sprintf("mongodb://%s/%s/?maxPoolSize=%d&authSource=admin",
|
||||||
|
mongodbHosts, config.Config.Mongo.Database,
|
||||||
|
config.Config.Mongo.MaxPoolSize)
|
||||||
|
}
|
||||||
|
}
|
||||||
client, err := mongo.Connect(context.TODO(), options.Client().ApplyURI(
|
client, err := mongo.Connect(context.TODO(), options.Client().ApplyURI(
|
||||||
fmt.Sprintf("mongodb://%v:%v@%v/?authSource=admin",
|
fmt.Sprintf("mongodb://%v:%v@%v/?authSource=admin",
|
||||||
config.Config.Mongo.Username, config.Config.Mongo.Password, mongodbHosts)))
|
config.Config.Mongo.Username, config.Config.Mongo.Password, mongodbHosts)))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return errs.Wrap(err)
|
return errs.Wrap(err)
|
||||||
} else {
|
} else {
|
||||||
err = client.Ping(context.TODO(), &readpref.ReadPref{})
|
err = client.Ping(context.TODO(), nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return errs.Wrap(err)
|
return errs.Wrap(err)
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user