add monitor options

This commit is contained in:
Sinh 2022-03-04 20:14:30 +07:00
parent 3e29ed42b1
commit 29e892b420
1 changed files with 7 additions and 2 deletions

View File

@ -5,6 +5,7 @@ import (
"fmt"
"github.com/logrusorgru/aurora"
"go.mongodb.org/mongo-driver/event"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
"go.mongodb.org/mongo-driver/mongo/readpref"
@ -14,6 +15,7 @@ import (
type Config struct {
Host string
DBName string
Monitor *event.CommandMonitor
TLS *ConnectTLSOpts
Standalone *ConnectStandaloneOpts
@ -86,6 +88,9 @@ func connectWithTLS(cfg Config) (*mongo.Database, error) {
uri := fmt.Sprintf(s, cfg.Host, caFile.Name(), certFile.Name(), pwd)
readPref := getReadPref(opts.ReadPreferenceMode)
clientOpts := options.Client().SetReadPreference(readPref).SetReplicaSet(opts.ReplSet).ApplyURI(uri)
if cfg.Monitor != nil {
clientOpts.SetMonitor(cfg.Monitor)
}
client, err := mongo.Connect(ctx, clientOpts)
if err != nil {
return nil, err