Draft: big refactor

This commit is contained in:
2025-09-16 16:03:27 +08:00
parent f527230f1e
commit c4f2b0af25
42 changed files with 684 additions and 215 deletions

View File

@@ -1,33 +1,42 @@
package tracing
import (
"context"
"github.com/spf13/viper"
"github.com/uptrace/opentelemetry-go-extra/otelzap"
"go.opentelemetry.io/otel"
"go.opentelemetry.io/contrib/bridges/otelzap"
"go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc"
"go.opentelemetry.io/otel/sdk/log"
"go.opentelemetry.io/otel/trace"
"go.uber.org/zap"
)
var (
Tracer trace.Tracer
Logger *otelzap.Logger
Provider *log.LoggerProvider
Tracer trace.Tracer
Logger *zap.Logger
version string = "0.0.1-alpha"
)
func InitTracer(appname string) {
Tracer = otel.Tracer(appname)
var l *zap.Logger
var err error
if viper.GetBool("zap-production") {
l, err = zap.NewProduction()
} else {
l, err = zap.NewDevelopment()
}
ctx := context.Background()
exp, err := otlploggrpc.New(ctx,
otlploggrpc.WithInsecure(),
otlploggrpc.WithEndpoint(viper.GetString("otel-endpoint")))
if err != nil {
panic(err)
}
Logger = otelzap.New(l)
Provider = log.NewLoggerProvider(
log.WithProcessor(log.NewBatchProcessor(exp)))
otelCore := otelzap.NewCore(appname,
otelzap.WithLoggerProvider(Provider))
Logger = zap.New(otelCore, zap.AddCaller())
}
func DeferTracer() {
Logger.Sync()
Provider.Shutdown(context.Background())
}