通过包- @vercel/otel使用开放远程测试将Next js应用连接到azure应用洞察

bqf10yzr  于 2023-10-18  发布在  其他
关注(0)|答案(1)|浏览(93)

我遇到了Next.js documentation,它提到使用“@vercel/otel”包进行OpenTelemetry配置。我按照指示并成功地在客户端设置了它。但是,似乎需要OpenTelemetry收集器后端来收集数据,我需要使用Azure Application Insights作为收集器。当我检查市场时,我找不到Azure Application Insights列为收集器here,但我确实找到了其他选项,如Datadog。
我的问题是,如何使用OpenTelemetry将我的Next.js应用程序连接到Azure Application Insights,以及是否可以为此目的使用“@vercel/otel”包记录数据?

wi3ka0sx

wi3ka0sx1#

  • 这些是我安装的依赖项。

查看此官方页面Optimizing: OpenTelemetry | Next.js (nextjs.org)

开启实验性OpenTelemetry

module.exports = {
  experimental: {
    instrumentationHook: true,
  },
}
  • 这是我的应用程序instrumentation.ts:
import { registerOTel } from '@vercel/otel';
import { AzureMonitorBaseExporter } from '@azure/monitor-opentelemetry-exporter';

export function register() {
  // Register OpenTelemetry with a custom service name (e.g., 'next-app')
  registerOTel('next-app');
  
  // Initialize Application Insights exporter with the Instrumentation Key
  const instrumentationKey = process.env.NEXT_PUBLIC_INSTRUMENTATION_KEY;
  const exporter = new AzureMonitorBaseExporter({ instrumentationKey });
}

输出:

相关问题