分享
go实用小技能-自定义log输出格式
dogo_小小人物 · · 10460 次点击 · · 开始浏览这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。
我们在使用go开发项目的时候,常常需要使用log包输出日志,go自带的log包默认输入格式为:时间+内容。
其实go还提供了几个很简单的输出选项
const (
Ldate = 1 << iota // 日期: 2009年01月23日
Ltime // 时间: 01:23:23
Lmicroseconds // 微秒: 01:23:23.123123.
Llongfile // 路径+文件名+行号: /a/b/c/d.go:23
Lshortfile // 文件名+行号: d.go:23
LUTC // 使用标准的UTC时间格式
LstdFlags = Ldate | Ltime // 默认
)
package main
import (
"log"
)
func main() {
Ldefault()
Ldate()
Ltime()
Lmicroseconds()
Llongfile()
Lshortfile()
LUTC()
}
func Ldefault() {
log.Println("这是默认的格式\n")
}
func Ldate() {
log.SetFlags(log.Ldate)
log.Println("这是输出日期格式\n")
}
func Ltime() {
log.SetFlags(log.Ltime)
log.Println("这是输出时间格式\n")
}
func Lmicroseconds() {
log.SetFlags(log.Lmicroseconds)
log.Println("这是输出微秒格式\n")
}
func Llongfile() {
log.SetFlags(log.Llongfile)
log.Println("这是输出路径+文件名+行号格式\n")
}
func Lshortfile() {
log.SetFlags(log.Lshortfile)
log.Println("这是输出文件名+行号格式\n")
}
func LUTC() {
log.SetFlags(log.Ldate | log.Ltime | log.Lmicroseconds | log.LUTC)
log.Println("这是输出 使用标准的UTC时间格式 格式\n")
}
运行效果
欢迎加入 dogo 技术交流群:437274005 点击右侧按钮快捷加入
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信10460 次点击
添加一条新回复
(您需要 后才能回复 没有账号 ?)
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
我们在使用go开发项目的时候,常常需要使用log包输出日志,go自带的log包默认输入格式为:时间+内容。
其实go还提供了几个很简单的输出选项
const (
Ldate = 1 << iota // 日期: 2009年01月23日
Ltime // 时间: 01:23:23
Lmicroseconds // 微秒: 01:23:23.123123.
Llongfile // 路径+文件名+行号: /a/b/c/d.go:23
Lshortfile // 文件名+行号: d.go:23
LUTC // 使用标准的UTC时间格式
LstdFlags = Ldate | Ltime // 默认
)
package main
import (
"log"
)
func main() {
Ldefault()
Ldate()
Ltime()
Lmicroseconds()
Llongfile()
Lshortfile()
LUTC()
}
func Ldefault() {
log.Println("这是默认的格式\n")
}
func Ldate() {
log.SetFlags(log.Ldate)
log.Println("这是输出日期格式\n")
}
func Ltime() {
log.SetFlags(log.Ltime)
log.Println("这是输出时间格式\n")
}
func Lmicroseconds() {
log.SetFlags(log.Lmicroseconds)
log.Println("这是输出微秒格式\n")
}
func Llongfile() {
log.SetFlags(log.Llongfile)
log.Println("这是输出路径+文件名+行号格式\n")
}
func Lshortfile() {
log.SetFlags(log.Lshortfile)
log.Println("这是输出文件名+行号格式\n")
}
func LUTC() {
log.SetFlags(log.Ldate | log.Ltime | log.Lmicroseconds | log.LUTC)
log.Println("这是输出 使用标准的UTC时间格式 格式\n")
}
运行效果