Skip to main content
Wenn Sie Anwendungen oder Funktionen auf Vercel bereitstellen, können Sie Telemetriedaten auf eine von zwei Arten an AppSignal senden:
  1. Mit dem Traces Drain von Vercel. Zusätzlich zur Weiterleitung der vom OpenTelemetry-Instrumentierungspaket von Vercel erfassten Daten bietet dies auch Einblicke in die Vercel-Infrastruktur, wie z. B. Vercel-Funktionen und Edge-Netzwerk.
  2. Mit dem OpenTelemetry-Instrumentierungspaket von Vercel.
Stellen Sie sicher, dass Sie eine Hosted-Collector-URL haben, bevor Sie mit diesen Anweisungen fortfahren.

Verwendung des Traces Drain

Um Traces von Vercel mit dem Traces Drain an AppSignal weiterzuleiten, müssen Sie in den Einstellungen Ihres Vercel-Projekts einen Traces Drain einrichten. Es wird außerdem empfohlen, das OpenTelemetry-Instrumentierungspaket von Vercel in Ihrer Anwendung zu installieren, um Telemetriedaten aus Ihrer Anwendung zu erfassen. Die Verwendung des Traces Drain von Vercel erfordert einen Vercel-Plan, in dem Drains verfügbar sind. Weitere Informationen zu verfügbaren Plänen und Preisen finden Sie in der Vercel-Drains-Dokumentation.

Einrichten eines Traces Drain

Navigieren Sie im Vercel-Dashboard zu Ihrem Projekt und gehen Sie zum Abschnitt Settings > Drains. Klicken Sie auf Add Drain und wählen Sie Traces als Drain-Typ aus. Screenshot des Schritts „Add Drain" in der Vercel-Benutzeroberfläche Wenn Sie gefragt werden, welche Projekte Daten über diesen Drain senden sollen, stellen Sie sicher, dass Sie nur dieses Projekt auswählen. Screenshot des Schritts „Configure drain" in der Vercel-Benutzeroberfläche Wählen Sie unter Configure the destination den Endpunkt Custom aus und geben Sie die URL des OTLP-Endpunkts Ihres AppSignal-Collectors ein und fügen Sie /v1/traces am Ende hinzu:
https://your-appsignal-collector-host.com/v1/traces
Wählen Sie im Dropdown Encoding die Option Protobuf aus. Aktivieren Sie Custom Headers und fügen Sie die folgenden Header hinzu, um sich bei AppSignal zu authentifizieren. Ersetzen Sie die Platzhalterwerte durch die Informationen Ihrer Anwendung, wie sie in AppSignal angezeigt werden. Ihren Push-API-Schlüssel finden Sie in den App-Einstellungen.
AppSignal-Config-Name: <your-app-name>
AppSignal-Config-Environment: <your-app-environment>
AppSignal-Config-PushApiKey: <your-appsignal-push-api-key>
AppSignal-Config-Revision: vercel
AppSignal-Config-LanguageIntegration: nodejs
OpenTelemetry-HostName: vercel
Wenn Sie auf Test klicken, wird ein Test-Trace an AppSignal gesendet und der Drain bei Erfolg gespeichert.

Installieren und Konfigurieren des Instrumentierungspakets

Verwenden Sie npm, um das OpenTelemetry-Instrumentierungspaket von Vercel und die OpenTelemetry-API zu den Abhängigkeiten Ihrer Anwendung hinzuzufügen:
npm install @opentelemetry/api @vercel/otel
Wenn Sie Next.js verwenden, fügen Sie die Datei instrumentation.ts zu Ihrer Anwendung hinzu. Sie muss im Stammverzeichnis des Projekts platziert werden (oder im Ordner src, wenn Sie einen verwenden). Wenn Sie andere Frameworks oder Vercel-Funktionen verwenden, stellen Sie sicher, dass dieser Code früh im Ausführungsprozess geladen wird, um OpenTelemetry-Daten ordnungsgemäß zu erfassen.
import { registerOTel } from "@vercel/otel";

export function register() {
  registerOTel({
    serviceName: "My service",
  });
}
Aktualisieren Sie den Servicenamen auf einen erkennbaren Namen für Ihre Anwendung.

Verwendung des Instrumentierungspakets

Um Telemetriedaten mit dem OpenTelemetry-Instrumentierungspaket von Vercel an AppSignal zu senden, müssen Sie das Paket in Ihrer Anwendung installieren und konfigurieren.

Installation der OpenTelemetry-Pakete

Verwenden Sie npm, um das OpenTelemetry-Instrumentierungspaket von Vercel, das OpenTelemetry SDK und den OTLP-Exporter zu den Abhängigkeiten Ihrer Anwendung hinzuzufügen:
npm install @opentelemetry/api \
  @opentelemetry/sdk-metrics \
  @opentelemetry/exporter-trace-otlp-proto \
  @opentelemetry/exporter-metrics-otlp-proto \
  @vercel/otel

OpenTelemetry in Ihrer Anwendung konfigurieren

Wenn Sie Next.js verwenden, fügen Sie die Datei instrumentation.ts zu Ihrer Anwendung hinzu. Sie muss im Stammverzeichnis des Projekts platziert werden (oder im Ordner src, wenn Sie einen verwenden). Wenn Sie andere Frameworks oder Vercel-Funktionen verwenden, stellen Sie sicher, dass dieser Code früh im Ausführungsprozess geladen wird, um OpenTelemetry-Daten ordnungsgemäß zu erfassen.
import { registerOTel } from "@vercel/otel";
import { OTLPTraceExporter } from "@opentelemetry/exporter-trace-otlp-proto";
import { OTLPMetricExporter } from "@opentelemetry/exporter-metrics-otlp-proto";
import { PeriodicExportingMetricReader } from "@opentelemetry/sdk-metrics";

const collectorHost = "https://your-appsignal-collector-host.com";

export function register() {
  registerOTel({
    serviceName: "My service",
    traceExporter: new OTLPTraceExporter({
      url: `${collectorHost}/v1/traces`,
    }),
    metricReader: new PeriodicExportingMetricReader({
      exportIntervalMillis: 1000,
      exporter: new OTLPMetricExporter({
        url: `${collectorHost}/v1/metrics`,
      }),
    }),
    attributes: {
      "appsignal.config.name": "My app",
      "appsignal.config.environment": "production",
      "appsignal.config.revision": "1",
      "appsignal.config.language_integration": "nodejs",
      "appsignal.config.push_api_key": "0000-0000-0000-0000",
      "host.name": "vercel",
    },
  });
}

Integration testen

Sobald Sie eine der oben genannten Integrationsoptionen abgeschlossen haben, stellen Sie Ihre Anwendung auf Vercel bereit (oder führen Sie ein Vorschau-Deployment aus) und testen Sie, ob Sie Daten in AppSignal sehen. Überprüfen Sie insbesondere die Seiten „Errors > Issue list” und „Performance > Traces”. Wenn Sie nach unseren Installationsanweisungen immer noch keine Daten in AppSignal sehen, lassen Sie es uns wissen, und wir helfen Ihnen, Ihre OpenTelemetry-Installation abzuschließen!