@@ -16,51 +16,33 @@ package tracing
16
16
17
17
import (
18
18
"fmt"
19
- "strings"
20
19
"time"
21
20
22
21
"github.com/opentracing/opentracing-go"
23
- "github.com/uber/jaeger-client-go"
24
22
"github.com/uber/jaeger-client-go/config"
25
23
"github.com/uber/jaeger-client-go/rpcmetrics"
26
- "github.com/uber/jaeger-client-go/transport"
27
24
"github.com/uber/jaeger-lib/metrics"
28
25
"go.uber.org/zap"
29
26
30
27
"github.com/jaegertracing/jaeger/examples/hotrod/pkg/log"
31
28
)
32
29
33
30
// Init creates a new instance of Jaeger tracer.
34
- func Init (serviceName string , metricsFactory metrics.Factory , logger log.Factory , backendHostPort string ) opentracing.Tracer {
35
- cfg := config.Configuration {
36
- Sampler : & config.SamplerConfig {
37
- Type : "const" ,
38
- Param : 1 ,
39
- },
31
+ func Init (serviceName string , metricsFactory metrics.Factory , logger log.Factory ) opentracing.Tracer {
32
+ cfg , err := config .FromEnv ()
33
+ if err != nil {
34
+ logger .Bg ().Fatal ("cannot parse Jaeger env vars" , zap .Error (err ))
40
35
}
36
+ cfg .ServiceName = serviceName
37
+ cfg .Sampler .Type = "const"
38
+ cfg .Sampler .Param = 1
39
+
41
40
// TODO(ys) a quick hack to ensure random generators get different seeds, which are based on current time.
42
41
time .Sleep (100 * time .Millisecond )
43
42
jaegerLogger := jaegerLoggerAdapter {logger .Bg ()}
44
- var sender jaeger.Transport
45
- if strings .HasPrefix (backendHostPort , "http://" ) {
46
- sender = transport .NewHTTPTransport (
47
- backendHostPort ,
48
- transport .HTTPBatchSize (1 ),
49
- )
50
- } else {
51
- if s , err := jaeger .NewUDPTransport (backendHostPort , 0 ); err != nil {
52
- logger .Bg ().Fatal ("cannot initialize UDP sender" , zap .Error (err ))
53
- } else {
54
- sender = s
55
- }
56
- }
57
- tracer , _ , err := cfg .New (
58
- serviceName ,
59
- config .Reporter (jaeger .NewRemoteReporter (
60
- sender ,
61
- jaeger .ReporterOptions .BufferFlushInterval (1 * time .Second ),
62
- jaeger .ReporterOptions .Logger (jaegerLogger ),
63
- )),
43
+
44
+ metricsFactory = metricsFactory .Namespace (serviceName , nil )
45
+ tracer , _ , err := cfg .NewTracer (
64
46
config .Logger (jaegerLogger ),
65
47
config .Metrics (metricsFactory ),
66
48
config .Observer (rpcmetrics .NewObserver (metricsFactory , rpcmetrics .DefaultNameNormalizer )),
0 commit comments