首页 > 编程语言 >opentelement源码分析

opentelement源码分析

时间:2023-10-09 19:12:05浏览次数:43  
标签:分析 traceId resource trace opentelement provider 源码 sampler go

provider和trace 持续分析。

关于traceId生成与traceId复用

当前运行的trace
/pkg/mod/go.opentelemetry.io/otel/[email protected]/trace/provider.go
		
生成traceId
/pkg/mod/go.opentelemetry.io/otel/[email protected]/trace/tracer.go
	r.provider.idGenerator.NewIDs(ctx)
			
			
负责生成的结构体
// tracerProviderConfig.
type tracerProviderConfig struct {
	// processors contains collection of SpanProcessors that are processing pipeline
	// for spans in the trace signal.
	// SpanProcessors registered with a TracerProvider and are called at the start
	// and end of a Span's lifecycle, and are called in the order they are
	// registered.
	processors []SpanProcessor

	// sampler is the default sampler used when creating new spans.
	sampler Sampler

	// idGenerator is used to generate all Span and Trace IDs when needed.
	idGenerator IDGenerator //该对象负责具体生成

	// spanLimits defines the attribute, event, and link limits for spans.
	spanLimits SpanLimits

	// resource contains attributes representing an entity that produces telemetry.
	resource *resource.Resource
}

复用traceId示例
func generateSpan(t *testing.T, tr trace.Tracer, option testOption) {
	sc := getSpanContext()

	for i := 0; i < option.genNumSpans; i++ {
		tid := sc.TraceID()
		binary.BigEndian.PutUint64(tid[0:8], uint64(i+1))
		newSc := sc.WithTraceID(tid)
		ctx := trace.ContextWithRemoteSpanContext(context.Background(), newSc)
		_, span := tr.Start(ctx, option.name)
		span.End()
	}
}
  

  

 

标签:分析,traceId,resource,trace,opentelement,provider,源码,sampler,go
From: https://www.cnblogs.com/supermarx/p/17752902.html

相关文章

  • 智慧安防AI视频智能分析云平台EasyCVR加密机授权小tips
    视频云存储/安防监控EasyCVR视频汇聚平台基于云边端智能协同,支持海量视频的轻量化接入与汇聚、转码与处理、全网智能分发、视频集中存储等。音视频流媒体视频平台EasyCVR拓展性强,视频能力丰富,具体可实现视频监控直播、视频轮播、视频录像、云存储、回放与检索、智能告警、服务器集......
  • 利用状态图实现词法分析
    实验一:词法分析程序                                                                                             03070020 曹宁一. 实验目的基本掌握计算机语言的词法分......
  • Ansible 执行过程分析、异步、效率优化
    直观观察任务执行速度插件callback_whitelist=profile_tasks,profile_roles,timer该插件可以直接统计每个task,每个role,每个play执行的时间,方面观察出哪些任务耗时Ansible执行过程分析下面是2.9的默认执行过程分析(简单分析,具体请vvv):获取用户家目录,此处为/root在家目录下创建临......
  • VTable——不只是高性能的多维数据分析表格
    导读VTable:不只是高性能的多维数据分析表格,更是行列间创作的方格艺术家!VTable是字节跳动开源可视化解决方案VisActor的组件之一。在现代应用程序中,表格组件是不可或缺的一部分,它们能够快速展示大量数据,并提供良好的可视化效果和交互体验。VTable是一款基于可视化渲染引擎......
  • R语言基于Bagging分类的逻辑回归(Logistic Regression)、决策树、森林分析心脏病患者
    原文链接:http://tecdat.cn/?p=22448原文出处:拓端数据部落公众号最近我们被客户要求撰写关于分析心脏病患者的研究报告,包括一些图形和统计输出。今天,我们将看下bagging技术里面的启发式算法。通常,bagging与树有关,用于生成森林。但实际上,任何类型的模型都有可能使用bagging。......
  • R语言ARMA-GARCH模型金融产品价格实证分析黄金价格时间序列
    全文链接:http://tecdat.cn/?p=32677原文出处:拓端数据部落公众号最近我们被客户要求撰写关于ARMA-GARCH的研究报告,包括一些图形和统计输出。研究黄金价格的动态演变过程至关重要。文中以黄金交易市场下午定盘价格为基础,帮助客户利用时间序列的相关理论,建立了黄金价格的ARMA-GA......
  • 禁航通告分析逻辑
    1.禁航解析结果csv1.1.保存路径\juneyaoair.com\file\运行控制部\航务技术处\情报\00通告席位共享资料\10-席位软件\RouteRestrictionAnalysisSystem\database_for_analyse\database_all_notam_analyse_save1.2.各表介绍1.2.1.《db_all_notam_restrictive_coordinate.csv......
  • 视频直播源码,Flutter 富文本 部分文字可以触发点击
    视频直播源码,Flutter富文本部分文字可以触发点击 Widget_buildBottomTip(){  returnContainer(   child:Text.rich(    TextSpan(     children:[      TextSpan(        text:"这是要显示的文字",    ......
  • 直播商城源码,去掉导航条和tabbar线条
    直播商城源码,去掉导航条和tabbar线条去掉导航条底部线条 [self.navigationController.navigationBarsetBackgroundImage:[[UIImagealloc]init]forBarMetrics:UIBarMetricsDefault];  [self.navigationController.navigationBarsetShadowImage:[[UIImagealloc]init]......
  • 在线直播源码,CSS磨砂玻璃效果和渐变主题色文字
    在线直播源码,CSS磨砂玻璃效果和渐变主题色文字HTML <divclass="card"> <h2class="gradient"> </h2> <div>  <p>.welcome{</p>  <pclass="indent">"CSDN:lqj_本人"</p>  <pclass="......