log

Package log

  • import "log"

  • 概述

  • 索引

  • 示例

  • 子目录

概述

Log 包实现了一个简单的日志包。它定义了一个类型,记录器,用于格式化输出的方法。它还有一个预定义的“standard”记录器,可以通过帮助函数 Printf|ln,Fatalf|ln 和 Panicf|ln 访问,比手动创建记录器更易于使用。该记录器写入标准错误并打印每条记录的消息的日期和时间。每条日志消息都在一个单独的行上输出:如果正在打印的消息不以换行符结尾,则记录器将添加一条。写入日志消息后,致命函数调用 os.Exit(1) 。写入日志消息后, Panic 函数调用 panic 。

索引

  • 常量

  • func Fatal(v ...interface{})

  • func Fatalf(format string, v ...interface{})

  • func Fatalln(v ...interface{})

  • func Flags() int

  • func Output(calldepth int, s string) error

  • func Panic(v ...interface{})

  • func Panicf(format string, v ...interface{})

  • func Panicln(v ...interface{})

  • func Prefix() string

  • func Print(v ...interface{})

  • func Printf(format string, v ...interface{})

  • func Println(v ...interface{})

  • func SetFlags(flag int)

  • func SetOutput(w io.Writer)

  • func SetPrefix(prefix string)

  • type Logger

  • func New(out io.Writer, prefix string, flag int) *Logger

  • func (l *Logger) Fatal(v ...interface{})

  • func (l *Logger) Fatalf(format string, v ...interface{})

  • func (l *Logger) Fatalln(v ...interface{})

  • func (l *Logger) Flags() int

  • func (l *Logger) Output(calldepth int, s string) error

  • func (l *Logger) Panic(v ...interface{})

  • func (l *Logger) Panicf(format string, v ...interface{})

  • func (l *Logger) Panicln(v ...interface{})

  • func (l *Logger) Prefix() string

  • func (l *Logger) Print(v ...interface{})

  • func (l *Logger) Printf(format string, v ...interface{})

  • func (l *Logger) Println(v ...interface{})

  • func (l *Logger) SetFlags(flag int)

  • func (l *Logger) SetOutput(w io.Writer)

  • func (l *Logger) SetPrefix(prefix string)

示例

Logger Logger.Output

包文件

log.go

常量

这些标志定义了哪些文本要加入由Logger生成的每个日志条目。

const ( // Bit 或'ed 一起控制什么打印。 // 无法控制它们出现的顺序(列出的顺序) // 这里)或他们提出的格式(如注释中所述)。 // 仅当Llongfile或Lshortfile时,前缀后跟冒号 // 已指定。 // 例如,标志Ldate|Ltime(或LstdFlags)产生, // 2009/01/23 01:23:23 信息 // 而标志Ldate | Ltime | Lmicroseconds | Llongfile生成, // 2009/01/23 01:23:23.123123 /a/b/c/d.go:23: 信息 Ldate = 1 << iota // 当地时区的日期:2009/01/23 Ltime // 在当地时区的时间:01:23:23 Lmicroseconds // 微秒分辨率:01:23:23.123123。 假设Ltime。 Llongfile // 完整的文件名和行号:/a/b/c/d.go:23 Lshortfile // 最终文件名元素和行号:d.go:23。 覆盖Llongfile LUTC // 如果设置了日期或时间,请使用UTC而不是本地时区 LstdFlags = Ldate | Ltime // 标准记录器的初始值 )

func Fatal(显示源文件)

func Fatal(v ...interface{})

Fatal 等同于 Print(),然后调用 os.Exit(1)。

func Fatalf(显示源文件)

func Fatalf(format string, v ...interface{})

Fatalf 等同于 Printf(),然后调用os.Exit(1)。

func Fatalln(显示源文件)

func Fatalln(v ...interface{})

Fatalln 等同于 Println(),然后调用os.Exit(1)。

func Flags(显示源文件)

func Flags() int

标志返回标准记录器的输出标志。

func Output(显示源文件)

func Output(calldepth int, s string) error

输出写入记录事件的输出。字符串 s 包含要在记录器的标志指定的前缀之后打印的文本。如果 s 的最后一个字符不是换行符,则会追加换行符。 Calldepth 是在设置 Llongfile 或 Lshortfile 时计算文件名和行号时跳过的帧;值为1将 打印 Output 的调用者的详细信息。

func Panic(显示源文件)

func Panic(v ...interface{})

Panic 等同于 Print(),然后调用 panic()。

func Panicf(显示源文件)

func Panicf(format string, v ...interface{})

Panicf 相当于 Printf(),然后调用 panic()。

func Panicln(显示源文件)

func Panicln(v ...interface{})

Panicln 相当于 Println(),然后调 用panic()。

func Prefix(显示源文件)

func Prefix() string

前缀返回标准记录器的输出前缀。

func Print(显示源文件)

func Print(v ...interface{})

打印调用打印输出到标准记录器。参数 以 fmt.Print 的方式处理。

func Printf(显示源文件)

func Printf(format string, v ...interface{})

Printf 调用输出以打印到标准记录器。参数以 fmt.Printf 的方式处理。

func Println(显示源文件)

func Println(v ...interface{})

Println 调用输出打印到标准记录器。参数以 fmt.Println 的方式处理。

func SetFlags(显示源文件)

func SetFlags(flag int)

SetFlags 设置标准记录器的输出标志。

func SetOutput(显示源文件)

func SetOutput(w io.Writer)

SetOutput 设置标准记录器的输出目的地。

func SetPrefix(显示源文件)

func SetPrefix(prefix string)

SetPrefix 设置标准记录器的输出前缀。

type Logger(显示源文件)

Logger 表示一个活动日志记录对象,它可以向 io.Writer 生成输出行。每个日志记录操作都会对Writer的Write方法进行一次调用。记录器可以在多个 goroutines 中同时使用; 它保证序列化对 Writer 的访问。

type Logger struct { // 包含已过滤或未导出的字段 }

示例

package main import ( "bytes" "fmt" "log" ) func main() { var ( buf bytes.Buffer logger = log.New(&buf, "logger: ", log.Lshortfile) ) logger.Print("Hello, log file!") fmt.Print(&buf) }

func New(显示源文件)

func New(out io.Writer, prefix string, flag int) *Logger

新建了一个新的记录器。out 变量设置将写入日志数据的目标。前缀出现在每个生成的日志行的开头。标志参数定义了日志记录属性。

func (*Logger) Fatal(显示源文件)

func (l *Logger) Fatal(v ...interface{})

致命等同于 l.Print(),然后调用 os.Exit(1)。

func (*Logger) Fatalf(显示源文件)

func (l *Logger) Fatalf(format string, v ...interface{})

Fatalf 等同于 l.Printf(),然后调用 os.Exit(1)。

func (*Logger) Fatalln(显示源文件)

func (l *Logger) Fatalln(v ...interface{})

Fatalln 相当于 l.Println(),然后调用 os.Exit(1)。

func (*Logger) Flags(显示源文件)

func (l *Logger) Flags() int

标志返回记录器的输出标志。

func (*Logger) Output(显示源文件)

func (l *Logger) Output(calldepth int, s string) error

输出写入记录事件的输出。字符串s包含要在记录器的标志指定的前缀之后打印的文本。如果s的最后一个字符不是换行符,则会追加换行符。Calldepth 用于恢复 PC 并提供通用性,但目前在所有预定义路径上它将为2。

示例

package main import ( "bytes" "fmt" "log" ) func main() { var ( buf bytes.Buffer logger = log.New(&buf, "INFO: ", log.Lshortfile) infof = func(info string) { logger.Output(2, info) } ) infof("Hello world") fmt.Print(&buf) }

func (*Logger) Panic(显示源文件)

func (l *Logger) Panic(v ...interface{})

Panic 等同于 l.Print(),然后调用 panic()。

func (*Logger) Panicf(显示源文件)

func (l *Logger) Panicf(format string, v ...interface{})

Panicf 相当于 l.Printf(),然后调用 panic()。

func (*Logger) Panicln(显示源文件)

func (l *Logger) Panicln(v ...interface{})

Panicln 相当于 l.Println(),然后调用 panic()。

func (*Logger) Prefix(显示源文件)

func (l *Logger) Prefix() string

前缀返回记录器的输出前缀。

func (*Logger) Print(显示源文件)

func (l *Logger) Print(v ...interface{})

打印调用 l.Output 打印到记录器。参数以 fmt.Print的方式处理。

func (*Logger) Printf(显示源文件)

func (l *Logger) Printf(format string, v ...interface{})

Printf 调用 l.Output 打印到记录器。参数以 fmt.Printf 的方式处理。

func (*Logger) Println(显示源文件)

func (l *Logger) Println(v ...interface{})

Println 调用 l.Output 打印到记录器。参数以 fmt.Println 的方式处理。

func (*Logger) SetFlags(显示源文件)

func (l *Logger) SetFlags(flag int)

SetFlags 设置记录器的输出标志。

func (*Logger) SetOutput(显示源文件)

func (l *Logger) SetOutput(w io.Writer)

SetOutput 设置记录器的输出目的地。

func (*Logger) SetPrefix(显示源文件)

func (l *Logger) SetPrefix(prefix string)

SetPrefix 设置记录器的输出前缀。

子目录

名称概述
syslog软件包系统日志为系统日志服务提供了一个简单的界面。