?
This document uses PHP Chinese website manual Release
import "log"
概述
索引
示例
子目錄
Log 包實現(xiàn)了一個簡單的日志包。它定義了一個類型,記錄器,用于格式化輸出的方法。它還有一個預定義的“standard”記錄器,可以通過幫助函數(shù) Printf|ln,F(xiàn)atalf|ln 和 Panicf|ln 訪問,比手動創(chuàng)建記錄器更易于使用。該記錄器寫入標準錯誤并打印每條記錄的消息的日期和時間。每條日志消息都在一個單獨的行上輸出:如果正在打印的消息不以換行符結尾,則記錄器將添加一條。寫入日志消息后,致命函數(shù)調用 os.Exit(1) 。寫入日志消息后, Panic 函數(shù)調用 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 一起控制什么打印。 // 無法控制它們出現(xiàn)的順序(列出的順序) // 這里)或他們提出的格式(如注釋中所述)。 // 僅當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 // 當?shù)貢r區(qū)的日期:2009/01/23 Ltime // 在當?shù)貢r區(qū)的時間:01:23:23 Lmicroseconds // 微秒分辨率:01:23:23.123123。 假設Ltime。 Llongfile // 完整的文件名和行號:/a/b/c/d.go:23 Lshortfile // 最終文件名元素和行號:d.go:23。 覆蓋Llongfile LUTC // 如果設置了日期或時間,請使用UTC而不是本地時區(qū) LstdFlags = Ldate | Ltime // 標準記錄器的初始值)
func Fatal(v ...interface{})
Fatal 等同于 Print(),然后調用 os.Exit(1)。
func Fatalf(format string, v ...interface{})
Fatalf 等同于 Printf(),然后調用os.Exit(1)。
func Fatalln(v ...interface{})
Fatalln 等同于 Println(),然后調用os.Exit(1)。
func Flags() int
標志返回標準記錄器的輸出標志。
func Output(calldepth int, s string) error
輸出寫入記錄事件的輸出。字符串 s 包含要在記錄器的標志指定的前綴之后打印的文本。如果 s 的最后一個字符不是換行符,則會追加換行符。 Calldepth 是在設置 Llongfile 或 Lshortfile 時計算文件名和行號時跳過的幀;值為1將 打印 Output 的調用者的詳細信息。
func Panic(v ...interface{})
Panic 等同于 Print(),然后調用 panic()。
func Panicf(format string, v ...interface{})
Panicf 相當于 Printf(),然后調用 panic()。
func Panicln(v ...interface{})
Panicln 相當于 Println(),然后調 用panic()。
func Prefix() string
前綴返回標準記錄器的輸出前綴。
func Print(v ...interface{})
打印調用打印輸出到標準記錄器。參數(shù) 以 fmt.Print 的方式處理。
func Printf(format string, v ...interface{})
Printf 調用輸出以打印到標準記錄器。參數(shù)以 fmt.Printf 的方式處理。
func Println(v ...interface{})
Println 調用輸出打印到標準記錄器。參數(shù)以 fmt.Println 的方式處理。
func SetFlags(flag int)
SetFlags 設置標準記錄器的輸出標志。
func SetOutput(w io.Writer)
SetOutput 設置標準記錄器的輸出目的地。
func SetPrefix(prefix string)
SetPrefix 設置標準記錄器的輸出前綴。
Logger 表示一個活動日志記錄對象,它可以向 io.Writer 生成輸出行。每個日志記錄操作都會對Writer的Write方法進行一次調用。記錄器可以在多個 goroutines 中同時使用; 它保證序列化對 Writer 的訪問。
type Logger struct { // 包含已過濾或未導出的字段}
package mainimport ("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(out io.Writer, prefix string, flag int) *Logger
新建了一個新的記錄器。out 變量設置將寫入日志數(shù)據(jù)的目標。前綴出現(xiàn)在每個生成的日志行的開頭。標志參數(shù)定義了日志記錄屬性。
func (l *Logger) Fatal(v ...interface{})
致命等同于 l.Print(),然后調用 os.Exit(1)。
func (l *Logger) Fatalf(format string, v ...interface{})
Fatalf 等同于 l.Printf(),然后調用 os.Exit(1)。
func (l *Logger) Fatalln(v ...interface{})
Fatalln 相當于 l.Println(),然后調用 os.Exit(1)。
func (l *Logger) Flags() int
標志返回記錄器的輸出標志。
func (l *Logger) Output(calldepth int, s string) error
輸出寫入記錄事件的輸出。字符串s包含要在記錄器的標志指定的前綴之后打印的文本。如果s的最后一個字符不是換行符,則會追加換行符。Calldepth 用于恢復 PC 并提供通用性,但目前在所有預定義路徑上它將為2。
package mainimport ("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 (l *Logger) Panic(v ...interface{})
Panic 等同于 l.Print(),然后調用 panic()。
func (l *Logger) Panicf(format string, v ...interface{})
Panicf 相當于 l.Printf(),然后調用 panic()。
func (l *Logger) Panicln(v ...interface{})
Panicln 相當于 l.Println(),然后調用 panic()。
func (l *Logger) Prefix() string
前綴返回記錄器的輸出前綴。
func (l *Logger) Print(v ...interface{})
打印調用 l.Output 打印到記錄器。參數(shù)以 fmt.Print的方式處理。
func (l *Logger) Printf(format string, v ...interface{})
Printf 調用 l.Output 打印到記錄器。參數(shù)以 fmt.Printf 的方式處理。
func (l *Logger) Println(v ...interface{})
Println 調用 l.Output 打印到記錄器。參數(shù)以 fmt.Println 的方式處理。
func (l *Logger) SetFlags(flag int)
SetFlags 設置記錄器的輸出標志。
func (l *Logger) SetOutput(w io.Writer)
SetOutput 設置記錄器的輸出目的地。
func (l *Logger) SetPrefix(prefix string)
SetPrefix 設置記錄器的輸出前綴。
名稱 | 概述 |
---|---|
syslog | 軟件包系統(tǒng)日志為系統(tǒng)日志服務提供了一個簡單的界面。 |