主页 > 知识库 > go日志系统logrus显示文件和行号的操作

go日志系统logrus显示文件和行号的操作

热门标签:地方门户网站 AI电销 Linux服务器 服务外包 呼叫中心市场需求 铁路电话系统 网站排名优化 百度竞价排名

logrus默认不支持显示文件名和行号,不太友好,但是在v1.2.0版本已经修复。可以通过setReportCaller设置即可显示文件名和行号

补充知识:logrus 的输出设置

O_RDONLY:只读模式(read-only)

O_WRONLY:只写模式(write-only)

O_RDWR:读写模式(read-write)

O_APPEND:追加模式(append)

O_CREATE:文件不存在就创建(create a new file if none exists.)

O_EXCL:与 O_CREATE 一起用,构成一个新建文件的功能,它要求文件必须不存在(used with O_CREATE, file must not exist)

O_SYNC:同步方式打开,即不使用缓存,直接写入硬盘 O_TRUNC:打开并清空文件

func initLogger() error {
 logrusLogLevel, err := logrus.ParseLevel(*logLevel)
 if err != nil {
 return err
 }
 now := collectors.GetTime()
 err1 := collectors.CreateDir("logs")
 if err1 != nil {
 return err1
 }
 f, err := os.OpenFile("logs/"+now, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0755)
 if err != nil {
 logrus.Fatal(err)
 }
 logrus.SetOutput(f)
 logrus.SetLevel(logrusLogLevel)
 logrus.SetReportCaller(true)
 logrus.SetFormatter(logrus.TextFormatter{TimestampFormat: "2006-01-02 15:04:05"})
 logrus.Info("init log done")
 return nil
}
 
func GetTime() string {
 return time.Now().Format("2006-01-02")
}
 
func CreateDir(string2 string) error {
 err := os.MkdirAll(string2, 0755)
 if err != nil {
 return err
 }
 return nil
}
 
func PathExists(path string) bool {
 _, err := os.Stat(path)
 if err == nil {
 return true
 }
 if os.IsExist(err) {
 return true
 }
 return false
}

以上这篇go日志系统logrus显示文件和行号的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
  • logrus日志自定义格式操作
  • Golang logrus 日志包及日志切割的实现
  • golang日志框架之logrus的使用
  • logrus hook输出日志到本地磁盘的操作

标签:兰州 衡水 崇左 黄山 仙桃 湘潭 铜川 湖南

巨人网络通讯声明:本文标题《go日志系统logrus显示文件和行号的操作》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266