Beispiel #1
0
        public static Tracer CreateTracer(string endPoint, string serviceName)
        {
            var myLoggerFactory = GetLoggerFactory();

            var traceBuilder = new Tracer.Builder(serviceName)
                               .WithSampler(new ConstSampler(true))
                               .WithLoggerFactory(myLoggerFactory);

            //var loggerFactory = traceBuilder.LoggerFactory;
            var metrics = traceBuilder.Metrics;

            //try result: 16686:X 14268:OK
            var sender = new HttpSender(endPoint);

            var reporter = new RemoteReporter.Builder()
                           .WithLoggerFactory(myLoggerFactory)
                           .WithMetrics(metrics)
                           .WithSender(sender)
                           .Build();

            _theSpanReporter = GetMySpanReporter();
            var compositeReporter = new CompositeReporter(_theSpanReporter, reporter);

            var tracer = traceBuilder
                         .WithReporter(compositeReporter)
                         .Build();

            //set clock
            var storage = GetMySpanStorage();

            storage.GetClock = () => tracer.Clock.UtcNow();

            return(tracer);
        }
Beispiel #2
0
        public static MySpanReporter GetMySpanReporter()
        {
            var recorder = GetMySpanRecorder();

            return(_theSpanReporter ?? (_theSpanReporter = new MySpanReporter(recorder)));
        }