diff --git a/database/sql.go b/database/sql.go index 88cf4ccfe86f10bd51f8b659695a3d61b297e971_ZGF0YWJhc2Uvc3FsLmdv..d9423fd8e23ba3708ecffb6daa74ee6401138f00_ZGF0YWJhc2Uvc3FsLmdv 100644 --- a/database/sql.go +++ b/database/sql.go @@ -3,6 +3,7 @@ import ( "context" "database/sql" + "encoding/json" "strings" "github.com/Masterminds/squirrel" @@ -27,7 +28,18 @@ if log != nil && log.GetLevel() < 0 { arr := zerolog.Arr() for _, arg := range args { - arr.Interface(arg) + b, err := json.Marshal(arg) + if err != nil { + arr.Interface(arg) + } else { + if len(b) > 512 { + b, _ = json.Marshal(map[string]interface{}{ + "arg first 512 bytes": b[:512], + "len": len(b), + }) + } + arr.RawJSON(b) + } } logger := log.With().Array("args", arr).Logger() logger.Trace().Msg("SQL: " + sql)