官方文档:https://opentelemetry.io/docs/instrumentation/go/getting-started/
Trace API
通过 Trace API 生成 traces。
package main
import (
"context"
"go.opentelemetry.io/otel"
"go.opentelemetry.io/otel/attribute"
"go.opentelemetry.io/otel/codes"
)
func f1(ctx context.Context, v string) {
ctx, span = otel.Tracer("tracer_name").Start(ctx, "trace_name")
span.SetAttributes(attribute.String("f1.v", v))
defer span.End()
if err := f2(ctx); err != nil {
span.RecordError(err)
span