From 617a6da70402993ec94b3d28996ec60ea3ca0f23 Mon Sep 17 00:00:00 2001 From: Ehsan Noureddin Moosa Date: Thu, 27 Jan 2022 14:55:10 +0300 Subject: [PATCH] move std/mw to contrib repo --- exmples/simple-rest-server/main.go | 2 - go.mod | 5 +- go.sum | 9 --- std/mw/tracekit/helpers.go | 10 ---- std/mw/tracekit/trace.go | 94 ------------------------------ std/mw/wrapper.go | 35 ----------- 6 files changed, 1 insertion(+), 154 deletions(-) delete mode 100644 std/mw/tracekit/helpers.go delete mode 100644 std/mw/tracekit/trace.go delete mode 100644 std/mw/wrapper.go diff --git a/exmples/simple-rest-server/main.go b/exmples/simple-rest-server/main.go index e1b3b7be..a6a92566 100644 --- a/exmples/simple-rest-server/main.go +++ b/exmples/simple-rest-server/main.go @@ -8,7 +8,6 @@ import ( log "github.com/ronaksoft/golog" "github.com/ronaksoft/ronykit" "github.com/ronaksoft/ronykit/std/bundle/rest" - "github.com/ronaksoft/ronykit/std/mw/tracekit" ) func main() { @@ -25,7 +24,6 @@ func main() { ronykit.RegisterService( ronykit.WrapService( NewSample().Generate(), - tracekit.Trace("sample-rest-server"), ), ), ). diff --git a/go.mod b/go.mod index 82f5dd1e..11d62779 100644 --- a/go.mod +++ b/go.mod @@ -10,8 +10,6 @@ require ( github.com/ronaksoft/golog v0.2.0 github.com/smartystreets/goconvey v1.7.2 github.com/valyala/fasthttp v1.32.0 - go.opentelemetry.io/otel v1.3.0 - go.opentelemetry.io/otel/trace v1.3.0 go.uber.org/zap v1.20.0 google.golang.org/protobuf v1.27.1 ) @@ -19,10 +17,9 @@ require ( require ( github.com/andybalholm/brotli v1.0.2 // indirect github.com/getsentry/sentry-go v0.12.0 // indirect - github.com/go-logr/logr v1.2.1 // indirect - github.com/go-logr/stdr v1.2.0 // indirect github.com/gobwas/httphead v0.1.0 // indirect github.com/gobwas/pool v0.2.1 // indirect + github.com/google/go-cmp v0.5.6 // indirect github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1 // indirect github.com/jtolds/gls v4.20.0+incompatible // indirect github.com/klauspost/compress v1.13.6 // indirect diff --git a/go.sum b/go.sum index ff12389e..611a1964 100644 --- a/go.sum +++ b/go.sum @@ -38,11 +38,6 @@ github.com/gin-gonic/gin v1.4.0/go.mod h1:OW2EZn3DO8Ln9oIKOvM++LBO+5UPHJJDH72/q/ github.com/go-check/check v0.0.0-20180628173108-788fd7840127/go.mod h1:9ES+weclKsC9YodN5RgxqK/VD9HM9JsCSh7rNhMZE98= github.com/go-errors/errors v1.0.1 h1:LUHzmkK3GUKUrL/1gfBUxAHzcev3apQlezX/+O7ma6w= github.com/go-errors/errors v1.0.1/go.mod h1:f4zRHt4oKfwPJE5k8C9vpYG+aDHdBFUsgrm6/TyX73Q= -github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/logr v1.2.1 h1:DX7uPQ4WgAWfoh+NGGlbJQswnYIVvz0SRlLS3rPZQDA= -github.com/go-logr/logr v1.2.1/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= -github.com/go-logr/stdr v1.2.0 h1:j4LrlVXgrbIWO83mmQUnK0Hi+YnbD+vzrE1z/EphbFE= -github.com/go-logr/stdr v1.2.0/go.mod h1:YkVgnZu1ZjjL7xTxrfm/LLZBfkhTqSR1ydtm6jTKKwI= github.com/go-martini/martini v0.0.0-20170121215854-22fa46961aab/go.mod h1:/P9AEU963A2AYjv4d1V5eVL1CQbEJq6aCNHDDjibzu8= github.com/gobwas/httphead v0.0.0-20180130184737-2c6c146eadee/go.mod h1:L0fX3K22YWvt/FAX9NnzrNzcI4wNYi9Yku4O0LKYflo= github.com/gobwas/httphead v0.1.0 h1:exrUm0f4YX0L7EBwZHuCF4GDp8aJfVeBrlLQrs6NqWU= @@ -186,10 +181,6 @@ github.com/yudai/gojsondiff v1.0.0/go.mod h1:AY32+k2cwILAkW1fbgxQ5mUmMiZFgLIV+FB github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82/go.mod h1:lgjkn3NuSvDfVJdfcVVdX+jpBxNmX4rDAzaS45IcYoM= github.com/yudai/pp v2.0.1+incompatible/go.mod h1:PuxR/8QJ7cyCkFp/aUDS+JY727OFEZkTdatxwunjIkc= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= -go.opentelemetry.io/otel v1.3.0 h1:APxLf0eiBwLl+SOXiJJCVYzA1OOJNyAoV8C5RNRyy7Y= -go.opentelemetry.io/otel v1.3.0/go.mod h1:PWIKzi6JCp7sM0k9yZ43VX+T345uNbAkDKwHVjb2PTs= -go.opentelemetry.io/otel/trace v1.3.0 h1:doy8Hzb1RJ+I3yFhtDmwNc7tIyw1tNMOIsyPzp1NOGY= -go.opentelemetry.io/otel/trace v1.3.0/go.mod h1:c/VDhno8888bvQYmbYLqe41/Ldmr/KKunbvWM4/fEjk= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/atomic v1.9.0 h1:ECmE8Bn/WFTYwEW/bpKD3M8VtR/zQVbavAoalC1PYyE= go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= diff --git a/std/mw/tracekit/helpers.go b/std/mw/tracekit/helpers.go deleted file mode 100644 index 25e1ef3d..00000000 --- a/std/mw/tracekit/helpers.go +++ /dev/null @@ -1,10 +0,0 @@ -package tracekit - -import ( - "github.com/ronaksoft/ronykit" - "go.opentelemetry.io/otel/trace" -) - -func Span(ctx *ronykit.Context) trace.Span { - return trace.SpanFromContext(ctx.Context()) -} diff --git a/std/mw/tracekit/trace.go b/std/mw/tracekit/trace.go deleted file mode 100644 index ae6e1486..00000000 --- a/std/mw/tracekit/trace.go +++ /dev/null @@ -1,94 +0,0 @@ -package tracekit - -import ( - "strings" - - "github.com/ronaksoft/ronykit" - "github.com/ronaksoft/ronykit/std/mw" - "go.opentelemetry.io/otel" - "go.opentelemetry.io/otel/propagation" - "go.opentelemetry.io/otel/trace" -) - -const ( - traceparentHeader = "traceparent" - tracestateHeader = "tracestate" -) - -func Trace(tracerName string) func(svc ronykit.Service) ronykit.Service { - traceCtx := propagation.TraceContext{} - tracer := otel.GetTracerProvider().Tracer(tracerName) - pre := func(ctx *ronykit.Context) { - userCtx := traceCtx.Extract(ctx.Context(), newCtxCarrier(ctx)) - userCtx, _ = tracer.Start(userCtx, ctx.Route()) - ctx.SetUserContext(userCtx) - - return - } - post := func(ctx *ronykit.Context) { - span := trace.SpanFromContext(ctx.Context()) - span.End() - - return - } - - return func(svc ronykit.Service) ronykit.Service { - return mw.Wrap(svc, pre, post) - } -} - -type ctxCarrier struct { - traceParent string - traceState string - ctx *ronykit.Context -} - -func newCtxCarrier(ctx *ronykit.Context) ctxCarrier { - c := ctxCarrier{ctx: ctx} - c.ctx.Conn().Walk( - func(key string, v string) bool { - if strings.EqualFold(traceparentHeader, key) { - c.traceParent = v - } else if strings.EqualFold(tracestateHeader, key) { - c.traceState = v - } - - return true - }, - ) - - return c -} - -func (c ctxCarrier) Get(key string) string { - switch key { - case traceparentHeader: - return c.traceParent - case tracestateHeader: - return c.traceState - } - - v, ok := c.ctx.Get(key).(string) - if !ok { - return "" - } - - return v -} - -func (c ctxCarrier) Set(key string, value string) { - c.ctx.Set(key, value) -} - -func (c ctxCarrier) Keys() []string { - var keys []string - c.ctx.Conn().Walk( - func(key string, _ string) bool { - keys = append(keys, key) - - return true - }, - ) - - return keys -} diff --git a/std/mw/wrapper.go b/std/mw/wrapper.go deleted file mode 100644 index 9793890e..00000000 --- a/std/mw/wrapper.go +++ /dev/null @@ -1,35 +0,0 @@ -package mw - -import "github.com/ronaksoft/ronykit" - -type serviceWrap struct { - svc ronykit.Service - pre ronykit.Handler - post ronykit.Handler -} - -func Wrap(svc ronykit.Service, pre, post ronykit.Handler) *serviceWrap { - return &serviceWrap{ - svc: svc, - pre: pre, - post: post, - } -} - -func (s serviceWrap) Name() string { - return s.svc.Name() -} - -func (s serviceWrap) Contracts() []ronykit.Contract { - return s.svc.Contracts() -} - -func (s serviceWrap) PreHandlers() []ronykit.Handler { - var handlers = []ronykit.Handler{s.pre} - - return append(handlers, s.svc.PreHandlers()...) -} - -func (s serviceWrap) PostHandlers() []ronykit.Handler { - return append(s.svc.PostHandlers(), s.post) -}