> ## 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.

# Afhandelen van excepties

In de meeste applicaties worden er fouten gegenereerd die niet gerelateerd zijn aan mogelijke bugs in uw code; ze ontstaan gewoon wanneer uw app in contact komt met de echte wereld, bijvoorbeeld wanneer een bot een formulier probeert in te vullen.

Om te voorkomen dat deze fouten als problemen in AppSignal worden gemeld, is het mogelijk om foutafhandeling aan uw code toe te voegen of zelfs AppSignal bepaalde fouten volledig te laten negeren.

## Fouten negeren

De AppSignal-configuratie maakt het mogelijk om [fouten te negeren](/guides/filter-data/ignore-errors) door een lijst van specifieke foutnamen op een denylist te zetten; AppSignal zal dan geen waarschuwingen versturen wanneer deze fouten optreden.

## Excepties registreren

Om de helpers setError en sendError te gebruiken, moet u deze importeren uit `@appsignal/nodejs`:

<CodeGroup>
  ```javascript Node.js theme={null}
  import { setError, sendError } from "@appsignal/nodejs";
  ```
</CodeGroup>

<Tip>
  De fouten die als argument aan `sendError` en `setError` worden meegegeven,
  moeten
  [`Error`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error)-achtige
  waarden zijn.
</Tip>

### Set Error

Als u excepties in uw applicatie wilt opvangen om crashes te voorkomen, maar de gebeurtenis toch wilt volgen, kunt u `setError()` gebruiken om de fout toe te voegen aan de huidige actieve span van uw applicatie.

<CodeGroup>
  ```javascript Node.js theme={null}
  import { setError, sendError } from "@appsignal/nodejs"

  app.get("/kittens", (req, res) => {
    try {
      fetchAllKittens()
    } catch (err) {
      setError(err)
    }
  }
  ```
</CodeGroup>

### Send Error

De functie `sendError()` kan worden gebruikt om een incident in een nieuwe root-span vast te leggen. Bij gebruik van `sendError()` wordt de fout onafhankelijk van de huidige context verstuurd, waardoor het sample voor de aanvraag niet als fout wordt gemarkeerd. Daarom kan het nuttig zijn om extra context te bieden via [niet-onderliggende span-helperfuncties](/nodejs/3.x/instrumentation/instrumentation#helpers).

In tegenstelling tot `setError()` kan de functie `sendError()` worden gebruikt in een context waar geen instrumentatie aanwezig is, zoals een eenmalig script of een job queue.

In het onderstaande voorbeeld wordt `setCustomData()` gebruikt om aanvullende gegevens aan de fout-span toe te voegen.

<CodeGroup>
  ```javascript Node.js theme={null}
  import { setError, sendError } from "@appsignal/nodejs"

  app.get("/kittens", (req, res) => {
    try {
      fetchAllKittens()
    } catch (err) {
      // oh no, we ran out of kittens!
      // let's keep a note that this happened...
      sendError(err, () => {
        setCustomData({ message: "We ran out of kittens!" })
      })
      // ...and go adopt some more!
      adoptMoreKittens()
    }
  }
  ```
</CodeGroup>

De exceptie wordt door AppSignal gevolgd als elke andere fout en stelt u in staat om aangepaste foutafhandeling en fallbacks te bieden.
