@@ -11,10 +11,6 @@ import (
11
11
"github.com/go-kod/kod/interceptor/kmetric"
12
12
"github.com/go-kod/kod/interceptor/krecovery"
13
13
"github.com/go-kod/kod/interceptor/ktrace"
14
- lognoop "go.opentelemetry.io/otel/log/noop"
15
- metricnoop "go.opentelemetry.io/otel/metric/noop"
16
- "go.opentelemetry.io/otel/propagation"
17
- tracenoop "go.opentelemetry.io/otel/trace/noop"
18
14
"go.uber.org/mock/gomock"
19
15
)
20
16
@@ -133,32 +129,32 @@ func Example_openTelemetryLog() {
133
129
// {"component":"github.com/go-kod/kod/examples/helloworld/HelloWorld","level":"INFO","msg":"Hello, World!"}
134
130
}
135
131
136
- // This example demonstrates how to use tracing with OpenTelemetry.
137
- func Example_openTelemetryTrace () {
138
- logger , observer := kod .NewTestLogger ()
139
-
140
- kod .Run (context .Background (), func (ctx context.Context , app * helloworld.App ) error {
141
- ctx , span := app .Tracer ().Start (ctx , "example" )
142
- defer span .End ()
143
- app .L (ctx ).Info ("Hello, World!" )
144
- app .L (ctx ).WarnContext (ctx , "Hello, World!" )
145
-
146
- app .HelloWorld .Get ().SayHello (ctx )
147
- return nil
148
- }, kod .WithInterceptors (ktrace .Interceptor ()), kod .WithLogger (logger ))
149
-
150
- fmt .Println (observer .Filter (func (m map [string ]any ) bool {
151
- return m ["trace_id" ] != nil && m ["span_id" ] != nil
152
- }).RemoveKeys ("trace_id" , "span_id" , "time" ))
153
-
154
- // Output:
155
- // helloWorld init
156
- // Hello, World!
157
- // helloWorld shutdown
158
- // {"component":"github.com/go-kod/kod/Main","level":"INFO","msg":"Hello, World!"}
159
- // {"component":"github.com/go-kod/kod/Main","level":"WARN","msg":"Hello, World!"}
160
- // {"component":"github.com/go-kod/kod/examples/helloworld/HelloWorld","level":"INFO","msg":"Hello, World!"}
161
- }
132
+ // // This example demonstrates how to use tracing with OpenTelemetry.
133
+ // func Example_openTelemetryTrace() {
134
+ // logger, observer := kod.NewTestLogger()
135
+
136
+ // kod.Run(context.Background(), func(ctx context.Context, app *helloworld.App) error {
137
+ // ctx, span := app.Tracer().Start(ctx, "example")
138
+ // defer span.End()
139
+ // app.L(ctx).Info("Hello, World!")
140
+ // app.L(ctx).WarnContext(ctx, "Hello, World!")
141
+
142
+ // app.HelloWorld.Get().SayHello(ctx)
143
+ // return nil
144
+ // }, kod.WithInterceptors(ktrace.Interceptor()), kod.WithLogger(logger))
145
+
146
+ // fmt.Println(observer.Filter(func(m map[string]any) bool {
147
+ // return m["trace_id"] != nil && m["span_id"] != nil
148
+ // }).RemoveKeys("trace_id", "span_id", "time"))
149
+
150
+ // // Output:
151
+ // // helloWorld init
152
+ // // Hello, World!
153
+ // // helloWorld shutdown
154
+ // // {"component":"github.com/go-kod/kod/Main","level":"INFO","msg":"Hello, World!"}
155
+ // // {"component":"github.com/go-kod/kod/Main","level":"WARN","msg":"Hello, World!"}
156
+ // // {"component":"github.com/go-kod/kod/examples/helloworld/HelloWorld","level":"INFO","msg":"Hello, World!"}
157
+ // }
162
158
163
159
// This example demonstrates how to use metrics with OpenTelemetry.
164
160
func Example_openTelemetryMetric () {
@@ -174,25 +170,6 @@ func Example_openTelemetryMetric() {
174
170
// helloWorld shutdown
175
171
}
176
172
177
- // This example demonstrates how to use OpenTelemetry with a custom OpenTelemetry provider.
178
- func Example_openTelemetryCustomProvider () {
179
- kod .Run (context .Background (), func (ctx context.Context , app * helloworld.App ) error {
180
- app .HelloWorld .Get ().SayHello (ctx )
181
- return nil
182
- },
183
- kod .WithTracerProvider (tracenoop .NewTracerProvider ()),
184
- kod .WithMeterProvider (metricnoop .NewMeterProvider ()),
185
- kod .WithLogProvider (lognoop .NewLoggerProvider ()),
186
- kod .WithTextMapPropagator (propagation .NewCompositeTextMapPropagator (
187
- propagation.TraceContext {}, propagation.Baggage {},
188
- )),
189
- )
190
- // Output:
191
- // helloWorld init
192
- // Hello, World!
193
- // helloWorld shutdown
194
- }
195
-
196
173
// This example demonstrates how to use [kod.WithInterceptors] to provide global interceptors to the application.
197
174
func Example_interceptorGlobal () {
198
175
interceptor := interceptor .Interceptor (func (ctx context.Context , info interceptor.CallInfo , req , res []interface {}, next interceptor.HandleFunc ) error {
0 commit comments