Added DSNopts for stor_db

This commit is contained in:
porosnicuadrian
2022-01-11 10:00:36 +02:00
committed by Dan Christian Bogos
parent b3879194c1
commit 5912e6aacf
11 changed files with 56 additions and 40 deletions

View File

@@ -31,6 +31,7 @@ import (
"github.com/cgrates/birpc/context"
"github.com/cgrates/cgrates/config"
"github.com/cgrates/cgrates/engine"
"github.com/cgrates/cgrates/utils"
)
@@ -90,7 +91,7 @@ func (sqlEe *SQLEe) initDialector() (err error) {
switch u.Scheme {
case utils.MySQL:
sqlEe.dialect = mysql.Open(fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8&loc=Local&parseTime=true&sql_mode='ALLOW_INVALID_DATES'",
u.User.Username(), password, u.Hostname(), u.Port(), dbname) + appendToMysqlDSNOpts(sqlEe.Cfg().Opts))
u.User.Username(), password, u.Hostname(), u.Port(), dbname) + engine.AppendToMysqlDSNOpts(sqlEe.Cfg().Opts.SQLDSNParams))
case utils.Postgres:
sqlEe.dialect = postgres.Open(fmt.Sprintf("host=%s port=%s dbname=%s user=%s password=%s sslmode=%s", u.Hostname(), u.Port(), dbname, u.User.Username(), password, ssl))
default:
@@ -99,18 +100,6 @@ func (sqlEe *SQLEe) initDialector() (err error) {
return
}
func appendToMysqlDSNOpts(opts *config.EventExporterOpts) string {
if opts.SQLDSNParams != nil {
var dsn string
for key, val := range opts.SQLDSNParams {
dsn = dsn + "&" + key + "=" + val
}
utils.Logger.Debug("dsn: " + dsn)
return dsn
}
return utils.EmptyString
}
func openDB(dialect gorm.Dialector, opts *config.EventExporterOpts) (db *gorm.DB, sqlDB *sql.DB, err error) {
if db, err = gorm.Open(dialect, &gorm.Config{AllowGlobalUpdate: true}); err != nil {
return