Skip to content

Commit

Permalink
[#73] merge plugin guide to v1.3.x branch
Browse files Browse the repository at this point in the history
  • Loading branch information
dwkang committed May 11, 2023
1 parent 997eeb8 commit 1daf8a0
Showing 1 changed file with 44 additions and 0 deletions.
44 changes: 44 additions & 0 deletions doc/plugin_guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
| [pporacle](plugin_guide.md#pporacle) | [plugin/oracle](/plugin/oracle) | sijms/go-ora/v2 package (https://github.com/sijms/go-ora) |
| [pppgsql](plugin_guide.md#pppgsql) | [plugin/pgsql](/plugin/pgsql) | lib/pq package (https://github.com/lib/pq) |
| [ppredigo](plugin_guide.md#ppredigo) | [plugin/redigo](/plugin/redigo) | gomodule/redigo package (https://github.com/gomodule/redigo) |
| [pprueidis](plugin_guide.md#pprueidis) | [plugin/rueidis](/plugin/rueidis) | redis/rueidis package (https://github.com/redis/rueidis) |
| [ppsarama](plugin_guide.md#ppsarama) | [plugin/sarama](/plugin/sarama) | Shopify/sarama package (https://github.com/Shopify/sarama) |

## pphttp
Expand Down Expand Up @@ -1526,6 +1527,49 @@ func redigo_test(w http.ResponseWriter, r *http.Request) {
```
[Full Example Source](/plugin/redigo/example/redigo_example.go)
## pprueidis
This package instruments the redis/rueidis calls.
Use the NewHook as the rueidis.Hook.
``` go
client, err := rueidis.NewClient(opt)
client = rueidishook.WithHook(client, pprueidis.NewHook(opt))
```
It is necessary to pass the context containing the pinpoint.Tracer to rueidis.Client.
``` go
ctx := pinpoint.NewContext(context.Background(), tracer)
err = client.Do(ctx, client.B().Set().Key("foo").Value("bar").Nx().Build()).Error()
```
``` go
package main

import (
"github.com/pinpoint-apm/pinpoint-go-agent"
"github.com/pinpoint-apm/pinpoint-go-agent/plugin/rueidis"
"github.com/redis/rueidis"
"github.com/redis/rueidis/rueidishook"
)

func rueidisv1(w http.ResponseWriter, r *http.Request) {
opt := rueidis.ClientOption{
InitAddress: []string{"localhost:6379"},
}

client, err := rueidis.NewClient(opt)
if err != nil {
fmt.Println(err)
}
client = rueidishook.WithHook(client, pprueidis.NewHook(opt))

ctx := r.Context()
err = client.Do(ctx, client.B().Set().Key("foo").Value("bar").Nx().Build()).Error()
...
```
[Full Example Source](/plugin/rueidis/example/rueidis_example.go)
## ppsarama
This package instruments Kafka consumers and producers.
Expand Down

0 comments on commit 1daf8a0

Please sign in to comment.