12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- package redis_test
- import (
- "fmt"
- "github.com/go-redis/redis"
- )
- func Example_instrumentation() {
- cl := redis.NewClient(&redis.Options{
- Addr: ":6379",
- })
- cl.WrapProcess(func(old func(cmd redis.Cmder) error) func(cmd redis.Cmder) error {
- return func(cmd redis.Cmder) error {
- fmt.Printf("starting processing: <%s>\n", cmd)
- err := old(cmd)
- fmt.Printf("finished processing: <%s>\n", cmd)
- return err
- }
- })
- cl.Ping()
- // Output: starting processing: <ping: >
- // finished processing: <ping: PONG>
- }
- func ExamplePipeline_instrumentation() {
- client := redis.NewClient(&redis.Options{
- Addr: ":6379",
- })
- client.WrapProcessPipeline(func(old func([]redis.Cmder) error) func([]redis.Cmder) error {
- return func(cmds []redis.Cmder) error {
- fmt.Printf("pipeline starting processing: %v\n", cmds)
- err := old(cmds)
- fmt.Printf("pipeline finished processing: %v\n", cmds)
- return err
- }
- })
- client.Pipelined(func(pipe redis.Pipeliner) error {
- pipe.Ping()
- pipe.Ping()
- return nil
- })
- // Output: pipeline starting processing: [ping: ping: ]
- // pipeline finished processing: [ping: PONG ping: PONG]
- }
|