diff --git a/CHANGELOG.md b/CHANGELOG.md index 8631493..4fd7466 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # 变更记录 - @go/db +## [1.0.4] - 2026-05-04 +### 优化 +- **日志增强**:升级 `apigo.cc/go/log` 至 v1.0.1,并重构数据库日志逻辑,利用新版 `log.DB` API 直接支持错误字段和调用栈捕获,提升排障效率。 + ## [1.0.3] - 2026-05-04 ### 新增 - **自动随机 ID (Auto Random ID)**:当表主键或唯一索引字段类型为 `char(8/10/12/14)` 且值为空时,自动填充分布式唯一 ID。 diff --git a/DB.go b/DB.go index c2e27e5..2e18679 100644 --- a/DB.go +++ b/DB.go @@ -237,7 +237,7 @@ type dbLogger struct { } func (dl *dbLogger) LogError(errStr string) { - dl.logger.DBError(errStr, dl.config.Type, dl.config.Dsn(), "", nil, 0) + dl.logger.DB(dl.config.Type, dl.config.Dsn(), "", nil, 0, errStr) } func (dl *dbLogger) LogQuery(query string, args []any, usedTime float32) { @@ -245,7 +245,7 @@ func (dl *dbLogger) LogQuery(query string, args []any, usedTime float32) { } func (dl *dbLogger) LogQueryError(errStr string, query string, args []any, usedTime float32) { - dl.logger.DBError(errStr, dl.config.Type, dl.config.Dsn(), query, args, usedTime) + dl.logger.DB(dl.config.Type, dl.config.Dsn(), query, args, usedTime, errStr) } var dbConfigs = make(map[string]*Config) @@ -467,7 +467,7 @@ func getDB(name string, logger *log.Logger, useCache bool) *DB { conn, err := getPool(conf) if err != nil { - logger.DBError(err.Error(), conf.Type, conf.Dsn(), "", nil, 0) + logger.DB(conf.Type, conf.Dsn(), "", nil, 0, err.Error()) return &DB{conn: nil, QuoteTag: "\"", Error: err} } @@ -483,7 +483,7 @@ func getDB(name string, logger *log.Logger, useCache bool) *DB { for _, host := range conf.ReadonlyHosts { conn, err := getPoolForHost(conf, host) if err != nil { - logger.DBError(err.Error(), conf.Type, conf.Dsn(), "", nil, 0) + logger.DB(conf.Type, conf.Dsn(), "", nil, 0, err.Error()) } else { readonlyConnections = append(readonlyConnections, conn) } diff --git a/go.mod b/go.mod index db663a7..b2f5446 100644 --- a/go.mod +++ b/go.mod @@ -8,7 +8,7 @@ require ( apigo.cc/go/convert v1.0.4 apigo.cc/go/crypto v1.0.4 apigo.cc/go/id v1.0.4 - apigo.cc/go/log v1.0.0 + apigo.cc/go/log v1.0.1 apigo.cc/go/rand v1.0.4 apigo.cc/go/safe v1.0.4 apigo.cc/go/shell v1.0.4