gitee.com/ks-custle/core-gm@v0.0.0-20230922171213-b83bdd97b62c/go-grpc-middleware/logging/zap/ctxzap/examples_test.go (about) 1 package ctxzap_test 2 3 import ( 4 "context" 5 6 "gitee.com/ks-custle/core-gm/go-grpc-middleware/logging/zap/ctxzap" 7 grpcctxtags "gitee.com/ks-custle/core-gm/go-grpc-middleware/tags" 8 pbtestproto "gitee.com/ks-custle/core-gm/go-grpc-middleware/testing/testproto" 9 "go.uber.org/zap" 10 ) 11 12 //goland:noinspection GoUnusedGlobalVariable 13 var zapLogger *zap.Logger 14 15 // Simple unary handler that adds custom fields to the requests's context. These will be used for all log statements. 16 func ExampleExtract_unary() { 17 _ = func(ctx context.Context, ping *pbtestproto.PingRequest) (*pbtestproto.PingResponse, error) { 18 // Add fields the ctxtags of the request which will be added to all extracted loggers. 19 grpcctxtags.Extract(ctx).Set("custom_tags.string", "something").Set("custom_tags.int", 1337) 20 21 // Extract a single request-scoped zap.Logger and log messages. 22 l := ctxzap.Extract(ctx) 23 l.Info("some ping") 24 l.Info("another ping") 25 return &pbtestproto.PingResponse{Value: ping.Value}, nil 26 } 27 }