• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    grom设置全局日志实现执行并打印sql语句

    发布者: 怀卉1097 | 发布时间: 2025-8-14 06:39| 查看数: 40| 评论数: 0|帖子模式

    gorm中的自定义日志

    Gorm 有一个 默认 logger 实现,默认情况下,它会打印慢 SQL 和错误
    Logger 接受的选项不多,您可以在初始化时自定义它,例如:
    1. newLogger := logger.New(
    2.   log.New(os.Stdout, "\r\n", log.LstdFlags), // io writer
    3.   logger.Config{
    4.     SlowThreshold:              time.Second,   // Slow SQL threshold(慢速SQL阈值)
    5.     LogLevel:                   logger.info, // Log level(日志级别)
    6.     IgnoreRecordNotFoundError: true,           // Ignore ErrRecordNotFound error for logger
    7.     ParameterizedQueries:      true,           // Don't include params in the SQL log(忽略记录器的ErrRecordNotFound错误)
    8.     Colorful:                  true,          // Disable color(禁用颜色)设置彩色打印
    9.   },
    10. )

    11. // Globally mode
    12. db, err := gorm.Open(sqlite.Open("test.db"), &gorm.Config{
    13.   Logger: newLogger,
    14. })
    复制代码
    gorm中日志的其他操作


    日志级别

    GORM 定义了这些日志级别:Silent、Error、Warn、Info
    1. db, err := gorm.Open(sqlite.Open("test.db"), &gorm.Config{
    2.   Logger: logger.Default.LogMode(logger.Silent),
    3. })
    复制代码
    Debug

    Debug 单个操作,将当前操作的 log 级别调整为 logger.Info
    1. db.Debug().Where("name = ?", "jinzhu").First(&User{})
    复制代码
    自定义 Logger

    参考 GORM 的 默认 logger 来定义您自己的 logger
    Logger 需要实现以下接口,它接受 context,所以你可以用它来追踪日志
    1. type Interface interface {
    2.     LogMode(LogLevel) Interface
    3.     Info(context.Context, string, ...interface{})
    4.     Warn(context.Context, string, ...interface{})
    5.     Error(context.Context, string, ...interface{})
    6.     Trace(ctx context.Context, begin time.Time, fc func() (sql string, rowsAffected int64), err error)
    7. }
    复制代码
    详细内容可参考gorm官方文档:https://gorm.io/zh_CN/docs/logger.html
    到此这篇关于grom设置全局日志实现执行并打印sql语句的文章就介绍到这了,更多相关grom设置全局日志 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    来源:互联网
    免责声明:如果侵犯了您的权益,请联系站长(1277306191@qq.com),我们会及时删除侵权内容,谢谢合作!

    最新评论

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表