草庐IT

OpenTracing

全部标签

go - 在一个 docker 容器中打开 go 代码,在另一个容器中打开 jaegertracing

我有一个go项目,它使用以下命令在一个docker容器中发送OpenTracing跨度,并在它自己的容器中运行jaegertracing:dockerrun-p6831:6831/udp-p16686:16686jaegertracing/all-in-one:latest当我运行以下go测试代码时,我可以在jaegerui中看到它们:import("testing"//"fmt""io"opentracing"github.com/opentracing/opentracing-go"jaeger"github.com/uber/jaeger-client-go"config"git

go - 使用 Jaeger 在分布式应用程序中跟踪 Kafka 总线

我分发了包含多个Go服务的应用程序。其中一些使用Kafka作为数据总线。我能够使用Jaeger的opentracing追踪服务之间的调用。我在图表上绘制Kafka跨度时遇到问题,它们显示为间隙。这是我能做的。初始跨度由gRPC中间件创建。生产方:...kafkaMsg:=kafka.Message{Key:[]byte(key),Value:msgBytes}headers:=make(map[string]string)ifspan:=opentracing.SpanFromContext(ctx);span!=nil{opentracing.GlobalTracer().Injec

go - 光步: Inaccurate UI for child span

背景我有一个java服务器正在对go服务器进行RPC调用。javarpc客户端和gorpc服务器使用lightstep进行检测。除了lightstepUI中放置gorpc服务器跨度的位置外,关于跟踪的一切看起来都很正常。java跨度有ts1493929521325,就在请求发送到go服务器之前。gorpcserver有两个时间戳:1493929521326是它收到请求并开始span的时间,1493929521336是它响应并完成span的时间。问题我希望UI将go跨度水平放置在java跨度的右侧。相反,它在右边很远。我能想到的唯一可能原因是java代码正在使用的v0.10.1和go正在

c# - OpenTracing 不使用 Serilog 发送日志

我正在尝试使用OpenTracing.Contrib.NetCore与Serilog。我需要将我的自定义日志发送给Jaeger。现在,它仅在我使用默认记录器工厂Microsoft.Extensions.Logging.ILoggerFactory时有效我的创业公司:publicvoidConfigureServices(IServiceCollectionservices){services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);services.AddSingleton(sp=>{varl

第二题: Introduction to OpenTracing and Jaeger in Java App

作者:禅与计算机程序设计艺术1.简介OpenTracing是CNCF(CloudNativeComputingFoundation)基金会的项目之一,它是一个开放标准,用于应用程序级分布式跟踪(Application-LevelDistributedTracing),主要基于GoogleDapper的论文。OpenTracing可帮助开发人员创建、集成、交付和管理分布式系统中的可追溯性(tracing)。Jaeger是UberTechnologies推出的开源分布式追踪系统,具有强大的查询功能和丰富的界面设计。该系统提供了一套完整的解决方案来存储、索引和查询分布式追踪数据。Jaeger在云原生

go - 从 zipkintracer 获取 traceId

我正在使用zipkin-go-opentracing,这是opentracing的实现用于zipkin的API。出于(原因)我需要从跨度中获取traceId。所以问题是:给定一个opentracing.Span,我如何获得TraceId?我尝试过的一切都给了我某种类型断言错误。谢谢, 最佳答案 import("github.com/opentracing/opentracing-go""github.com/openzipkin/zipkin-go-opentracing")funcIdFromSpan(aspaninterface

go - 从 zipkintracer 获取 traceId

我正在使用zipkin-go-opentracing,这是opentracing的实现用于zipkin的API。出于(原因)我需要从跨度中获取traceId。所以问题是:给定一个opentracing.Span,我如何获得TraceId?我尝试过的一切都给了我某种类型断言错误。谢谢, 最佳答案 import("github.com/opentracing/opentracing-go""github.com/openzipkin/zipkin-go-opentracing")funcIdFromSpan(aspaninterface

从Opentracing、OpenCensus 到 OpenTelemetry,看可观测数据标准演进史

作者:可观测伴随着分布式应用、Serverless应用被越来越多开发者及企业所接受,但其背后所隐藏的运维问题也逐渐凸显出来--微服务架构中请求链路过长从而导致问题定位时间长,运维想要日常监控也非常困难。以一个具体问题举例,在分布式应用中完成一个单一用户请求可能会需要多个不同的微服务处理,这其中任何一个服务失败或性能拉垮,都会对用户请求响应造成极大影响。随着业务不断扩张,这个调用链也越来越复杂。仅凭借打印日志或APM性能监控很难做到全景浏览或者一钻到底。对于问题排查或性能分析时,这无异于盲人摸象。面对这样的问题,Google发表了论文《"Dapper-aLarge-ScaleDistribute

从Opentracing、OpenCensus 到 OpenTelemetry,看可观测数据标准演进史

作者:可观测伴随着分布式应用、Serverless应用被越来越多开发者及企业所接受,但其背后所隐藏的运维问题也逐渐凸显出来--微服务架构中请求链路过长从而导致问题定位时间长,运维想要日常监控也非常困难。以一个具体问题举例,在分布式应用中完成一个单一用户请求可能会需要多个不同的微服务处理,这其中任何一个服务失败或性能拉垮,都会对用户请求响应造成极大影响。随着业务不断扩张,这个调用链也越来越复杂。仅凭借打印日志或APM性能监控很难做到全景浏览或者一钻到底。对于问题排查或性能分析时,这无异于盲人摸象。面对这样的问题,Google发表了论文《"Dapper-aLarge-ScaleDistribute