SuperAPI AI 工具集

matlab-instrument-opentelemetry-tracing

通用与其它

查看项目

更新于 10-16 06:45

技能介绍

用途:为 MATLAB 代码添加 OpenTelemetry 追踪,在函数中创建 span 并建立父子关系,用于可观测性。需安装 OpenTelemetry-MATLAB 1.11.0 或更新版本,MATLAB R2022b 或更新版本。

主要能力:通过 opentelemetry.trace.getTracer 获取 tracer,用 startSpan 创建 span,makeCurrent 设为当前上下文以自动形成父子关系,setAttributes 附加键值元数据,setStatus 标记 Ok 或 Error,recordException 记录 MException,addEvent 记录事件,endSpan 仅在函数中途(如循环内)结束 span。

使用方式:每个函数内部自行获取 tracer,不修改函数签名;span 与 scope 均为 RAII,函数返回时自动结束,无需在退出处调用 endSpan 或 clear(scope);循环内需 endSpan 并 clear scope 以恢复父上下文。属性名用小写点分 snake_case,命名空间须为有意义的领域名词。仅在涉及远程通信时设置 SpanKind。

限制:不适用于仅需指标或日志、配置 TracerProvider/SDK、跨网络传播上下文,以及 parfor 内插桩(MATLAB 中 OTel 上下文非线程安全)。注意 MATLAB API 与其它语言不同:无 setAttribute(单数),无 StatusCode 枚举,直接传字符串 "Ok"/"Error"。未配置时 OTel 方法为空操作,无需 isConfigured 判断。