54 lines
999 B
Go
54 lines
999 B
Go
package main
|
|
|
|
import (
|
|
"bytes"
|
|
"fmt"
|
|
|
|
"git.nix13.pw/scuroneko/slog"
|
|
)
|
|
|
|
func main() {
|
|
logger := slog.CreateLogger().
|
|
Prefix("EXAMPLE").
|
|
Level(slog.DEBUG).
|
|
JsonPretty(true)
|
|
|
|
textStdout := logger.CreateTextStdoutWriter()
|
|
jsonStdout := logger.CreateJsonStdoutWriter()
|
|
|
|
textFile, err := logger.CreateTextFileWriter("logs/text.log")
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
|
|
jsonFile, err := logger.CreateJsonFileWriter("logs/json.log")
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
|
|
var externalBuffer bytes.Buffer
|
|
externalText := logger.CreateTextWriter(&externalBuffer)
|
|
externalJSON := logger.CreateJsonWriter(&externalBuffer)
|
|
|
|
logger.AddWriters(
|
|
textStdout,
|
|
jsonStdout,
|
|
textFile,
|
|
jsonFile,
|
|
externalText,
|
|
externalJSON,
|
|
)
|
|
|
|
logger.Infoln("service started")
|
|
logger.Warnln("cache miss")
|
|
logger.Errorln("request failed")
|
|
logger.Debugln("debug details")
|
|
|
|
if err := logger.Close(); err != nil {
|
|
panic(err)
|
|
}
|
|
|
|
fmt.Println("external buffer contents:")
|
|
fmt.Println(externalBuffer.String())
|
|
}
|