Skip to content

Commit 86523a9

Browse files
authored
Add region tags in OTLP Trace Sample (#1089)
* Add region tags in OTLP Trace Sample * Update gitignore * Fix lint issue
1 parent a83dd81 commit 86523a9

4 files changed

Lines changed: 30 additions & 0 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,5 +18,6 @@ coverage.*
1818
/example/metric/exponential_histogram/exponential_histogram
1919
/example/trace/otlphttp/otlphttp
2020
/example/log/slogbridge/otel_logs
21+
/example/log/slogbridge/slogbridge
2122
go.work
2223
go.work.sum

example/trace/otlpgrpc/example.go

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,28 +15,41 @@
1515

1616
package main
1717

18+
// [START opentelemetry_otlp_grpc_imports].
1819
import (
1920
"context"
21+
// [START_EXCLUDE silent].
2022
"flag"
2123
"fmt"
2224
"log"
2325
"time"
2426

27+
// [END_EXCLUDE].
2528
"go.opentelemetry.io/otel"
2629
"go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc"
2730
sdktrace "go.opentelemetry.io/otel/sdk/trace"
31+
32+
// [START_EXCLUDE].
2833
semconv "go.opentelemetry.io/otel/semconv/v1.37.0"
2934
"go.opentelemetry.io/otel/trace"
3035

36+
// [START opentelemetry_otlp_grpc_auth_imports].
3137
"google.golang.org/grpc"
3238
"google.golang.org/grpc/credentials/oauth"
39+
// [END opentelemetry_otlp_grpc_auth_imports].
40+
// [END_EXCLUDE].
3341
)
3442

43+
// [END opentelemetry_otlp_grpc_imports]
44+
3545
var keepRunning = flag.Bool("keepRunning", false, "Set to true for generating spans at a fixed rate indefinitely. Default is false.")
3646

3747
func initTracer() (func(), error) {
48+
// [START opentelemetry_otlp_grpc_init]
49+
// Initializes OpenTelemetry with OTLP exporters
3850
ctx := context.Background()
3951

52+
// Configure gRPC client with Google Application Default Credentials
4053
creds, err := oauth.NewApplicationDefault(ctx)
4154
if err != nil {
4255
panic(err)
@@ -45,6 +58,7 @@ func initTracer() (func(), error) {
4558
// set OTEL_RESOURCE_ATTRIBUTES="gcp.project_id=<project_id>"
4659
// set endpoint with OTEL_EXPORTER_OTLP_ENDPOINT=https://<endpoint>
4760
// set OTEL_EXPORTER_OTLP_HEADERS="x-goog-user-project=<project_id>"
61+
// Configure exporter to use the credentials
4862
exporter, err := otlptracegrpc.New(ctx, otlptracegrpc.WithDialOption(grpc.WithPerRPCCredentials(creds)))
4963
if err != nil {
5064
panic(err)
@@ -57,6 +71,7 @@ func initTracer() (func(), error) {
5771
sdktrace.WithBatcher(exporter))
5872

5973
otel.SetTracerProvider(tp)
74+
// [END opentelemetry_otlp_grpc_init]
6075
return func() {
6176
err := tp.Shutdown(context.Background())
6277
if err != nil {

example/trace/otlpgrpc/go.mod

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,25 @@ go 1.24.0
44

55
toolchain go1.24.2
66

7+
// [START opentelemetry_otlp_grpc_deps]
78
require (
9+
// [START_EXCLUDE]
810
go.opentelemetry.io/otel v1.38.0
11+
// [END_EXCLUDE]
912
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.38.0
13+
// [START_EXCLUDE silent]
1014
go.opentelemetry.io/otel/sdk v1.38.0
1115
go.opentelemetry.io/otel/trace v1.38.0
16+
17+
// [START opentelemetyry_otlp_grpc_auth_deps]
18+
// When using gRPC based OTLP exporter, the auth is built in.
1219
google.golang.org/grpc v1.75.1
20+
// [END opentelemetyry_otlp_grpc_auth_deps]
21+
// [END_EXCLUDE]
1322
)
1423

24+
// [END opentelemetry_otlp_grpc_deps]
25+
1526
require (
1627
cloud.google.com/go/compute/metadata v0.9.0 // indirect
1728
github.com/cenkalti/backoff/v5 v5.0.3 // indirect

example/trace/otlphttp/go.mod

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,10 @@ require (
99
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.38.0
1010
go.opentelemetry.io/otel/sdk v1.38.0
1111
go.opentelemetry.io/otel/trace v1.38.0
12+
// [START opentelemetry_otlp_http_auth_deps]
13+
// When using http based OTLP exporter, use explicit auth library
1214
golang.org/x/oauth2 v0.31.0
15+
// [END opentelemetry_otlp_http_auth_deps]
1316
)
1417

1518
require (

0 commit comments

Comments
 (0)