github.com/ydb-platform/ydb-go-sdk/v3@v3.89.2/log/field.go (about) 1 package log 2 3 import ( 4 "fmt" 5 "time" 6 7 "github.com/ydb-platform/ydb-go-sdk/v3/internal/kv" 8 ) 9 10 type ( 11 Field = kv.KeyValue 12 ) 13 14 const ( 15 IntType = kv.IntType 16 Int64Type = kv.Int64Type 17 StringType = kv.StringType 18 BoolType = kv.BoolType 19 DurationType = kv.DurationType 20 StringsType = kv.StringsType 21 ErrorType = kv.ErrorType 22 AnyType = kv.AnyType 23 StringerType = kv.StringerType 24 ) 25 26 func appendFieldByCondition(condition bool, ifTrueField Field, fields ...Field) []Field { 27 if condition { 28 fields = append(fields, ifTrueField) 29 } 30 31 return fields 32 } 33 34 func String(k, v string) Field { 35 return kv.String(k, v) 36 } 37 38 func Int(k string, v int) Field { 39 return kv.Int(k, v) 40 } 41 42 func Int64(k string, v int64) Field { 43 return kv.Int64(k, v) 44 } 45 46 func Bool(k string, v bool) Field { 47 return kv.Bool(k, v) 48 } 49 50 func Duration(k string, v time.Duration) Field { 51 return kv.Duration(k, v) 52 } 53 54 func Strings(k string, v []string) Field { 55 return kv.Strings(k, v) 56 } 57 58 func NamedError(k string, v error) Field { 59 return kv.NamedError(k, v) 60 } 61 62 func Error(v error) Field { 63 return kv.Error(v) 64 } 65 66 func Any(k string, v any) Field { 67 return kv.Any(k, v) 68 } 69 70 func Stringer(k string, v fmt.Stringer) Field { 71 return kv.Stringer(k, v) 72 }