Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | 03-May-2022 | - | ||||
.travis.yml | H A D | 10-Oct-2015 | 13 | |||
Makefile | H A D | 10-Oct-2015 | 52 | |||
README.md | H A D | 10-Oct-2015 | 2.3 KiB | |||
err.go | H A D | 10-Oct-2015 | 3 KiB | |||
err_test.go | H A D | 10-Oct-2015 | 518 | |||
logex.go | H A D | 10-Oct-2015 | 5.1 KiB | |||
logex_test.go | H A D | 10-Oct-2015 | 1 KiB |
README.md
1Logex 2======= 3[![Build Status](https://travis-ci.org/go-logex/logex.svg?branch=master)](https://travis-ci.org/go-logex/logex) 4[![GoDoc](https://godoc.org/gopkg.in/logex.v1?status.svg)](https://godoc.org/gopkg.in/logex.v1) 5[![Join the chat at https://gitter.im/go-logex/logex](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/go-logex/logex?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) 6 7An golang log lib, supports tracing and level, wrap by standard log lib 8 9How To Get 10======= 11shell 12``` 13go get gopkg.in/logex.v1 14``` 15 16source code 17```{go} 18import "gopkg.in/logex.v1" // package name is logex 19 20func main() { 21 logex.Info("Hello!") 22} 23``` 24 25Level 26======= 27 28```{go} 29import "gopkg.in/logex.v1" 30 31func main() { 32 logex.Println("") 33 logex.Debug("debug staff.") // Only show if has an "DEBUG" named env variable(whatever value). 34 logex.Info("info") 35 logex.Warn("") 36 logex.Fatal("") // also trigger exec "os.Exit(1)" 37 logex.Error(err) // print error 38 logex.Struct(obj) // print objs follow such layout "%T(%+v)" 39 logex.Pretty(obj) // print objs as JSON-style, more readable and hide non-publish properties, just JSON 40} 41``` 42 43Extendability 44====== 45 46source code 47```{go} 48type MyStruct struct { 49 BiteMe bool 50} 51``` 52 53may change to 54 55```{go} 56type MyStruct struct { 57 BiteMe bool 58 logex.Logger // just this 59} 60 61func main() { 62 ms := new(MyStruct) 63 ms.Info("woo!") 64} 65``` 66 67Runtime Tracing 68====== 69All log will attach theirs stack info. Stack Info will shown by an layout, `{packageName}.{FuncName}:{FileName}:{FileLine}` 70 71```{go} 72package main 73 74import "gopkg.in/logex.v1" 75 76func test() { 77 logex.Pretty("hello") 78} 79 80func main() { 81 test() 82} 83``` 84 85response 86``` 872014/10/10 15:17:14 [main.test:testlog.go:6][PRETTY] "hello" 88``` 89 90Error Tracing 91====== 92You can trace an error if you want. 93 94```{go} 95package main 96 97import ( 98 "gopkg.in/logex.v1" 99 "os" 100) 101 102func openfile() (*os.File, error) { 103 f, err := os.Open("xxx") 104 if err != nil { 105 err = logex.Trace(err) 106 } 107 return f, err 108} 109 110func test() error { 111 f, err := openfile() 112 if err != nil { 113 return logex.Trace(err) 114 } 115 f.Close() 116 return nil 117} 118 119func main() { 120 err := test() 121 if err != nil { 122 logex.Error(err) 123 return 124 } 125 logex.Info("test success") 126} 127``` 128 129 130response 131``` 1322014/10/10 15:22:29 [main.main:testlog.go:28][ERROR] [main.openfile:11;main.test:19] open xxx: no such file or directory 133``` 134