diff --git a/conf/defaults.ini b/conf/defaults.ini index 404a7950bf3..51c549bf070 100644 --- a/conf/defaults.ini +++ b/conf/defaults.ini @@ -82,6 +82,9 @@ max_idle_conn = 2 # Max conn setting default is 0 (mean not set) max_open_conn = +# Set to true to log the sql calls and execution times. +debug = + # For "postgres", use either "disable", "require" or "verify-full" # For "mysql", use either "true", "false", or "skip-verify". ssl_mode = disable diff --git a/conf/sample.ini b/conf/sample.ini index c7d2d1d2695..ec01b7c7979 100644 --- a/conf/sample.ini +++ b/conf/sample.ini @@ -91,6 +91,8 @@ # Max conn setting default is 0 (mean not set) ;max_open_conn = +# Set to true to log the sql calls and execution times. +debug = #################################### Session #################################### [session] diff --git a/docs/sources/installation/configuration.md b/docs/sources/installation/configuration.md index 5da485144c8..12c9d121490 100644 --- a/docs/sources/installation/configuration.md +++ b/docs/sources/installation/configuration.md @@ -224,6 +224,9 @@ The maximum number of connections in the idle connection pool. ### max_open_conn The maximum number of open connections to the database. +### debug +Set to `true` to log the sql calls and execution times. +
## [security] diff --git a/pkg/services/sqlstore/sqlstore.go b/pkg/services/sqlstore/sqlstore.go index e2fc1f29063..bd27e8b8871 100644 --- a/pkg/services/sqlstore/sqlstore.go +++ b/pkg/services/sqlstore/sqlstore.go @@ -158,10 +158,14 @@ func getEngine() (*xorm.Engine, error) { } else { engine.SetMaxOpenConns(DbCfg.MaxOpenConn) engine.SetMaxIdleConns(DbCfg.MaxIdleConn) - engine.SetLogger(&xorm.DiscardLogger{}) - // engine.SetLogger(NewXormLogger(log.LvlInfo, log.New("sqlstore.xorm"))) - // engine.ShowSQL = true - // engine.ShowInfo = true + debugSql := setting.Cfg.Section("database").Key("debug").MustBool(false) + if !debugSql { + engine.SetLogger(&xorm.DiscardLogger{}) + } else { + engine.SetLogger(NewXormLogger(log.LvlInfo, log.New("sqlstore.xorm"))) + engine.ShowSQL(true) + engine.ShowExecTime(true) + } } return engine, nil } @@ -190,12 +194,12 @@ func LoadConfig() { DbCfg.Host = sec.Key("host").String() DbCfg.Name = sec.Key("name").String() DbCfg.User = sec.Key("user").String() - DbCfg.MaxOpenConn = sec.Key("max_open_conn").MustInt(0) - DbCfg.MaxIdleConn = sec.Key("max_idle_conn").MustInt(0) if len(DbCfg.Pwd) == 0 { DbCfg.Pwd = sec.Key("password").String() } } + DbCfg.MaxOpenConn = sec.Key("max_open_conn").MustInt(0) + DbCfg.MaxIdleConn = sec.Key("max_idle_conn").MustInt(0) if DbCfg.Type == "sqlite3" { UseSQLite3 = true