您的位置 首页 golang

Go语言编程从入门到精通,调试日志log

日志是程序运行过程的记录,日志监视应用程序执行的健康状况、反馈问题及寻找问题。

举个例子

可以看到执行结果有3部分组成,即执行日期、时间和执行结果。

致命错误退出

12行:通过errors.New()定义了一个error类型的变量。

13行:Fatal相当于Print()后面跟着对os.Exit(1)的调用,连贯起来就是先打印输出,然后程序退出。

把日志写入文件中

11行:通过OpenFile打开1个文件,os.O_APPEND|os.O_CREATE|os.O_RDWR代表打开文件的模式,可以追加、新建、可读可写,然后0666是权限,和linux的文件权限是相同的。如果成功,返回的File上的方法可以用于I/O。如果有错误,它的类型将是*PathError。

16行:defer file.Close()的目的是:关闭文件。

17行:通过log.SetOutput(file)设置标准记录器的输出目标,参数要求是w io.Writer类型。

执行后,在当前文件夹的生成running.log日志文件

但是这样操作存在一个问题,要么显示在控制台,要么显示在日志文件中,有没有办法能够让控制台实时显示,日志文件也记录呢?

18行:定义writer变量,作为写入器,将os.Stdout和file作为参数传入写入器,返回值是1个Writer。

19行:通过log.SetOutput(writer)设置标准记录器的输出目标。

可以看到,控制台和日志文件是同步的,内容也是一样的。

文章来源:智云一二三科技

文章标题:Go语言编程从入门到精通,调试日志log

文章地址:https://www.zhihuclub.com/97670.shtml

关于作者: 智云科技

热门文章

网站地图