> ## Documentation Index
> Fetch the complete documentation index at: https://docs.appsignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Traces vanuit Vercel-applicaties

Wanneer u applicaties of functies op Vercel uitrolt, kunt u telemetriegegevens op een van de volgende twee manieren naar AppSignal sturen:

1. [Met behulp van de traces-drain van Vercel](#using-the-traces-drain). Naast het doorsturen van gegevens die zijn verzameld door het OpenTelemetry-instrumentatiepakket van Vercel, biedt dit ook inzicht in de Vercel-infrastructuur, zoals Vercel-functies en het edge-netwerk.
2. [Met behulp van het OpenTelemetry-instrumentatiepakket van Vercel](#using-the-instrumentation-package).

Zorg ervoor dat u [een hosted collector-URL hebt](/collector/hosted-vs-self-hosted#hosted-collector) voordat u verdergaat met deze instructies.

## De traces-drain gebruiken

Om traces van Vercel naar AppSignal door te sturen met de traces-drain, moet u een traces-drain instellen in de instellingen van uw Vercel-project. Het wordt ook aanbevolen om het [OpenTelemetry-instrumentatiepakket van Vercel](https://vercel.com/docs/tracing/instrumentation) in uw applicatie te installeren om telemetriegegevens van uw applicatie vast te leggen.

Voor het gebruik van de traces-drain van Vercel is een Vercel-plan vereist waarin drains beschikbaar zijn. Zie de [drains-documentatie van Vercel](https://vercel.com/docs/drains) voor meer informatie over beschikbare plannen en prijzen.

### Een traces-drain instellen

Navigeer vanuit het Vercel-dashboard naar uw project en ga naar het gedeelte **Settings > Drains**. Klik op **Add Drain** en selecteer **Traces** als drain-type.

<img src="https://mintcdn.com/appsignal-715f5a51/MS9b5WO71lSfD5jG/assets/images/screenshots/vercel/add-drain.png?fit=max&auto=format&n=MS9b5WO71lSfD5jG&q=85&s=510e2ac6f225ef838fe46f7bea3d0b47" alt="Schermafbeelding van de &#x22;Add Drain&#x22;-stap in de Vercel-UI" width="1560" height="988" data-path="assets/images/screenshots/vercel/add-drain.png" />

Wanneer u wordt gevraagd welke projecten gegevens via deze drain moeten verzenden, zorg er dan voor dat u alleen dit project selecteert.

<img src="https://mintcdn.com/appsignal-715f5a51/MS9b5WO71lSfD5jG/assets/images/screenshots/vercel/configure-drain.png?fit=max&auto=format&n=MS9b5WO71lSfD5jG&q=85&s=e76695b4242c308ac055060987cbff8d" alt="Schermafbeelding van de &#x22;Configure drain&#x22;-stap in de Vercel-UI" width="1526" height="698" data-path="assets/images/screenshots/vercel/configure-drain.png" />

Selecteer onder **Configure the destination** **Custom** endpoint en voer de URL van het OTLP-endpoint van uw AppSignal-collector in, waarbij u `/v1/traces` aan het einde toevoegt:

<CodeGroup>
  ```plaintext title="Example URL" theme={null}
  https://your-appsignal-collector-host.com/v1/traces
  ```
</CodeGroup>

Selecteer in de dropdown **Encoding** de optie **Protobuf**.

Schakel **Custom Headers** in en voeg de volgende headers toe om te authenticeren bij AppSignal. Vervang de placeholderwaarden door de informatie van uw applicatie zoals weergegeven in AppSignal.
Uw Push API-sleutel vindt u in de [App settings](https://appsignal.com/redirect-to/app?to=info).

<CodeGroup>
  ```yaml Custom Headers theme={null}
  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
  ```
</CodeGroup>

Door op **Test** te drukken, wordt er een testtrace naar AppSignal verzonden en wordt de drain bij succes opgeslagen.

### Het instrumentatiepakket installeren en configureren

Gebruik npm om het OpenTelemetry-instrumentatiepakket van Vercel en de OpenTelemetry-API toe te voegen aan de dependencies van uw applicatie:

<CodeGroup>
  ```shell Shell theme={null}
  npm install @opentelemetry/api @vercel/otel
  ```
</CodeGroup>

Als u Next.js gebruikt, voeg dan het bestand `instrumentation.ts` toe aan uw applicatie. Dit moet in de hoofdmap van het project worden geplaatst (of in de `src`-map als u die gebruikt).

Als u andere frameworks of Vercel-functies gebruikt, zorg er dan voor dat deze code vroeg in het uitvoeringsproces wordt geladen om OpenTelemetry-gegevens correct vast te leggen.

<CodeGroup>
  ```typescript TypeScript theme={null}
  import { registerOTel } from "@vercel/otel";

  export function register() {
    registerOTel({
      serviceName: "My service",
    });
  }
  ```
</CodeGroup>

Werk de servicenaam bij naar een herkenbare naam voor uw applicatie.

## Het instrumentatiepakket gebruiken

Om telemetriegegevens naar AppSignal te sturen met behulp van het [OpenTelemetry-instrumentatiepakket van Vercel](https://vercel.com/docs/tracing/instrumentation), moet u het pakket in uw applicatie installeren en configureren.

### De OpenTelemetry-pakketten installeren

Gebruik npm om het OpenTelemetry-instrumentatiepakket van Vercel, de OpenTelemetry SDK en de OTLP-exporter toe te voegen aan de dependencies van uw applicatie:

<CodeGroup>
  ```shell Shell theme={null}
  npm install @opentelemetry/api \
    @opentelemetry/sdk-metrics \
    @opentelemetry/exporter-trace-otlp-proto \
    @opentelemetry/exporter-metrics-otlp-proto \
    @vercel/otel
  ```
</CodeGroup>

### OpenTelemetry in uw applicatie configureren

Als u Next.js gebruikt, voeg dan het bestand `instrumentation.ts` toe aan uw applicatie. Dit moet in de hoofdmap van het project worden geplaatst (of in de `src`-map als u die gebruikt).

Als u andere frameworks of Vercel-functies gebruikt, zorg er dan voor dat deze code vroeg in het uitvoeringsproces wordt geladen om OpenTelemetry-gegevens correct vast te leggen.

<CodeGroup>
  ```typescript TypeScript theme={null}
  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",
      },
    });
  }
  ```
</CodeGroup>

## De integratie testen

Zodra u een van de bovenstaande integratieopties hebt voltooid, deployt u uw applicatie naar Vercel (of voert u een preview-deployment uit) en test u of u gegevens in AppSignal ziet binnenkomen. Bekijk specifiek de pagina ["Errors > Issue list"](https://appsignal.com/redirect-to/app?to=exceptions) en ["Performance > Traces"](https://appsignal.com/redirect-to/app?to=performance/traces).

Als u na het volgen van onze installatie-instructies nog steeds geen gegevens in AppSignal ziet, [laat het ons weten](mailto:support@appsignal.com?subject=OpenTelemetry%20issue) en we helpen u graag uw OpenTelemetry-installatie te voltooien!
