You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Vue.js应用开启OpenTelemetry浏览器Instrumentation?求指导

Vue.js 应用开启 OpenTelemetry 浏览器 Instrumentation 指南

先修复你代码中的错误

你提供的代码里存在一个变量名错误:你创建的是provider,但调用addSpanProcessor时用了未定义的providerWithZone,这会导致代码运行报错。

修正后的完整代码

import { WebTracerProvider, SimpleSpanProcessor, ConsoleSpanExporter } from '@opentelemetry/sdk-trace-web';
import { ZoneContextManager } from '@opentelemetry/context-zone';
import { Resource } from '@opentelemetry/resources';
import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions';
import { registerInstrumentations } from '@opentelemetry/instrumentation';
import { getWebAutoInstrumentations } from '@opentelemetry/auto-instrumentations-web';

// 创建追踪提供者,设置服务标识
const provider = new WebTracerProvider({
  resource: new Resource({
    [SemanticResourceAttributes.SERVICE_NAME]: 'vue-browser-app',
  }),
});

// 添加Span处理器,使用Console导出器
provider.addSpanProcessor(new SimpleSpanProcessor(new ConsoleSpanExporter()));

// 注册提供者,配置上下文管理器
provider.register({
  contextManager: new ZoneContextManager(),
});

// 注册自动Instrumentation,捕获各类浏览器行为
registerInstrumentations({
  instrumentations: [getWebAutoInstrumentations()],
});

完整配置步骤

  1. 安装依赖
    在你的Vue项目根目录执行安装命令:
npm install @opentelemetry/sdk-trace-web @opentelemetry/context-zone @opentelemetry/resources @opentelemetry/semantic-conventions @opentelemetry/instrumentation @opentelemetry/auto-instrumentations-web
# 或用yarn
yarn add @opentelemetry/sdk-trace-web @opentelemetry/context-zone @opentelemetry/resources @opentelemetry/semantic-conventions @opentelemetry/instrumentation @opentelemetry/auto-instrumentations-web
  1. 在Vue入口文件中引入配置
    将上述修正后的代码添加到你的Vue应用入口文件(通常是src/main.js或src/main.ts)的最顶部,确保在Vue实例创建前完成OpenTelemetry的初始化。

关于ConsoleSpanExporter的确认

是的,ConsoleSpanExporter会将追踪到的所有Span对象直接输出到浏览器的开发者控制台(Console面板)。你可以通过以下方式验证:

  • 打开浏览器开发者工具(F12)并切换到Console标签
  • 在页面上触发操作(比如点击按钮、路由跳转、发送API请求)
  • 控制台会输出包含Span名称、耗时、属性等信息的日志内容

验证生效情况

完成配置后,启动Vue应用:

npm run serve

触发页面交互后,检查控制台,你应该能看到OpenTelemetry输出的Span日志,这说明Instrumentation已经正常工作。

内容的提问来源于stack exchange,提问作者Devgal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 22:20:31