Go
Skogsavverkning
Sök…
Grundläggande utskrift
Go har ett inbyggt loggbibliotek som kallas log
med en vanligt förekommande metod Print
och dess varianter. Du kan importera biblioteket och sedan göra några grundläggande utskrifter:
package main
import "log"
func main() {
log.Println("Hello, world!")
// Prints 'Hello, world!' on a single line
log.Print("Hello, again! \n")
// Prints 'Hello, again!' but doesn't break at the end without \n
hello := "Hello, Stackers!"
log.Printf("The type of hello is: %T \n", hello)
// Allows you to use standard string formatting. Prints the type 'string' for %T
// 'The type of hello is: string
}
Loggar till fil
Det är möjligt att ange loggmål med något som tillfredsställer io.Writer-gränssnittet. Med det kan vi logga in till fil:
package main
import (
"log"
"os"
)
func main() {
logfile, err := os.OpenFile("test.log", os.O_RDWR|os.O_CREATE|os.O_APPEND, 0666)
if err != nil {
log.Fatalln(err)
}
defer logfile.Close()
log.SetOutput(logfile)
log.Println("Log entry")
}
Produktion:
$ cat test.log
2016/07/26 07:29:05 Log entry
Loggar till syslog
Det är också möjligt att logga in på syslog med log/syslog
så här:
package main
import (
"log"
"log/syslog"
)
func main() {
syslogger, err := syslog.New(syslog.LOG_INFO, "syslog_example")
if err != nil {
log.Fatalln(err)
}
log.SetOutput(syslogger)
log.Println("Log entry")
}
Efter att ha kört kommer vi att kunna se den raden i syslog:
Jul 26 07:35:21 localhost syslog_example[18358]: 2016/07/26 07:35:21 Log entry
Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow