github.com/Kong/go-pdk@v0.11.0/log/log.go (about) 1 /* 2 Write to log file. 3 */ 4 package log 5 6 import ( 7 "github.com/Kong/go-pdk/bridge" 8 "google.golang.org/protobuf/types/known/structpb" 9 ) 10 11 // Holds this module's functions. Accessible as `kong.Log` 12 type Log struct { 13 bridge.PdkBridge 14 } 15 16 func (r Log) doLog(method string, args []interface{}) error { 17 l, err := structpb.NewList(args) 18 if err != nil { 19 return err 20 } 21 22 return r.Ask(method, l, nil) 23 } 24 25 func (r Log) Alert(args ...interface{}) error { 26 return r.doLog(`kong.log.alert`, args) 27 } 28 29 func (r Log) Crit(args ...interface{}) error { 30 return r.doLog(`kong.log.crit`, args) 31 } 32 33 func (r Log) Err(args ...interface{}) error { 34 return r.doLog(`kong.log.err`, args) 35 } 36 37 func (r Log) Warn(args ...interface{}) error { 38 return r.doLog(`kong.log.warn`, args) 39 } 40 41 func (r Log) Notice(args ...interface{}) error { 42 return r.doLog(`kong.log.notice`, args) 43 } 44 45 func (r Log) Info(args ...interface{}) error { 46 return r.doLog(`kong.log.info`, args) 47 } 48 49 func (r Log) Debug(args ...interface{}) error { 50 return r.doLog(`kong.log.debug`, args) 51 } 52 53 // var ( 54 // modeSet = map[string]string{ "mode": "set" } 55 // modeAdd = map[string]string{ "mode": "add" } 56 // modeReplace = map[string]string{ "mode": "replace" } 57 // ) 58 // 59 // func (r Log) SetSerializeValue(key string, v interface{}) error { 60 // _, err := r.Ask(`kong.log.set_serialize_value`, key, v, modeSet) 61 // return err 62 // } 63 // 64 // func (r Log) SetSerializeValueAdd(key string, v interface{}) error { 65 // _, err := r.Ask(`kong.log.set_serialize_value`, key, v, modeAdd) 66 // return err 67 // } 68 // 69 // func (r Log) SetSerializeValueReplace(key string, v interface{}) error { 70 // _, err := r.Ask(`kong.log.set_serialize_value`, key, v, modeReplace) 71 // return err 72 // } 73 74 func (r Log) Serialize() (s string, err error) { 75 return r.AskString(`kong.log.serialize`, nil) 76 }