コード例 #1
0
        public async Task RecordBinary_WithoutTraceId_NotCallRecordOnSpanTracer()
        {
            var zipkinConfig      = new ZipkinConfig(new Uri("http://localhost"));
            var traceInfoAccessor = Substitute.For <ITraceInfoAccessor>();
            var spanTracer        = Substitute.For <ISpanTracer>();
            var logger            = Substitute.For <ILogger <ZipkinClient> >();

            var zipkinClient = new ZipkinClient(zipkinConfig, traceInfoAccessor, spanTracer, logger);

            await zipkinClient.RecordBinary <object>(null, null, null);

            await zipkinClient.RecordBinary <object>(null, "value", null);

            await zipkinClient.RecordBinary <object>(null, "value", new object());

            await zipkinClient.RecordBinary <object>(null, null, new object());

            await zipkinClient.RecordBinary <object>(null, null, new object());

            await zipkinClient.RecordBinary <object>(new Span("span", null), null, null);

            await zipkinClient.RecordBinary <object>(new Span("span", null), null, new object());

            await zipkinClient.RecordBinary <object>(new Span("span", null), "value", null);

            await zipkinClient.RecordBinary <object>(new Span("span", null), "value", new object());

            await spanTracer.DidNotReceiveWithAnyArgs().RecordBinary(null, null, null);
        }
コード例 #2
0
        public DataDto Get()
        {
            var zipkinConfig = ZipkinSetup();
            var context      = System.Web.HttpContext.Current.GetOwinContext();
            var zipkinClient = new ZipkinClient(zipkinConfig, context);

            AccountDto acct = null;

            using (var httpClient = new HttpClient(new ZipkinMessageHandler(zipkinClient)))
            {
                var response = httpClient.GetAsync("http://channel.ZipkinLab.localmachine.altsrc.net/account/9999").Result;

                if (response.IsSuccessStatusCode)
                {
                    var content = response.Content.ReadAsStringAsync().Result;
                    acct = JsonConvert.DeserializeObject <AccountDto>(content);
                }
            }

            using (var httpClient = new HttpClient(new ZipkinMessageHandler(zipkinClient)))
            {
                var sharedResponse = httpClient.GetAsync($"http://shared.ZipkinLab.localmachine.altsrc.net/api/shared/3").Result;

                if (sharedResponse.IsSuccessStatusCode)
                {
                    var sharedContent = sharedResponse.Content.ReadAsStringAsync().Result;
                }
            }



            var dataDto = new DataDto(acct.Customer.FirstName, acct.Customer.LastName, acct.AccountId);

            var span = new Span();

            //span.Id = ???
            zipkinClient.RecordBinary <object>(span, "correlationId", Guid.NewGuid().ToString("N"));

            return(dataDto);
        }