Golang log包的源码分析

一 写作背景

       最近研究源码,这次研究的源码包是日志包:log包;需要说明的是,这个包是基于golang1.18版本的(低于这个版本的,源代码略有区别,可以忽略不计);

二 代码说明


2.1 log包的作用

       log包,它实现简单的日志服务;通过调用log包提供的函数,可以实现简单的日志打印功能。


2.2 代码结构

       log包里面,提供了3个系列的函数,分别print系列、panic系列、fatal系列;说明如下:

在这里插入图片描述

       沿着这3个函数往下分析,可以看到,底层调用了同一个函数Output();所以这篇文章,我们主要分析这个函数。


三 代码详解


3.1 log的结构体

       在log包里面,定义了一个日志的结构体:

猜你喜欢

转载自blog.csdn.net/whq19890827/article/details/127080108