Go log 的简单使用

// mylog project main.go
package main

import (
	"fmt"
	"io"
	"log"
	"os"
)

var (
	Info    *log.Logger
	Warning *log.Logger
	Error   *log.Logger
)

func init() {
	log.Println("func init()")                           //默认只有日期和时间
	log.SetFlags(log.Ldate | log.Lshortfile | log.Ltime) //加上文件名称
}

func main() {
	errFile, err := os.OpenFile("errFile.log", os.O_CREATE|os.O_APPEND|os.O_WRONLY, 0655)
	if err != nil {
		log.Fatalln("Open file errFile.log error: ", err)
	}

	Info = log.New(os.Stdout, "[Info]", log.Llongfile|log.LstdFlags) // 日期时间+完整文件路径名称
	Warning = log.New(os.Stdout, "[Warning]", log.Llongfile|log.LstdFlags)
	Error = log.New(io.MultiWriter(os.Stderr, errFile), "[Error]", log.Llongfile|log.LstdFlags) //同时输出到标准错误和文件中

	Info.Println("这是一条 Info 日志信息!")
	Warning.Println("这是一条 Warning 日志信息")
	Error.Println(" 这是一条 Wrror 日志信息, 这条信息还会输出到 errFile.log 文件中去!")

	log.Println("func main()")
	log.Println("Hello World!")

	fmt.Println("Hello World!")
}

编译输出:

C:/Go/bin/go.exe build -i [D:/golang/src/mylog]
成功: 进程退出代码 0.
D:/golang/src/mylog/mylog.exe  [D:/golang/src/mylog]
2018/02/06 11:20:13 func init()
[Info]2018/02/06 11:20:13 D:/golang/src/mylog/main.go:32: 这是一条 Info 日志信息!
[Warning]2018/02/06 11:20:13 D:/golang/src/mylog/main.go:33: 这是一条 Warning 日志信息
Hello World!
[Error]2018/02/06 11:20:13 D:/golang/src/mylog/main.go:34:  这是一条 Wrror 日志信息, 这条信息还会输出到 errFile.log 文件中去!
2018/02/06 11:20:13 main.go:36: func main()
2018/02/06 11:20:13 main.go:37: Hello World!
成功: 进程退出代码 0.

112243_Ou5I_98920.png

转载于:https://my.oschina.net/tsh/blog/1618942

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值