Error Grouping

Understand how Checkend groups similar errors together.

Automatic Fingerprinting

By default, Checkend generates a fingerprint for each error based on:

  • The error class name (e.g., NoMethodError)
  • The first line of the backtrace from your application code

This means errors with the same class occurring at the same location are grouped into a single "problem."

Custom Fingerprints

Sometimes you may want to group errors differently. You can provide a custom fingerprint when sending errors:

Custom fingerprint example
curl -X POST https://your-checkend-instance.com/ingest/v1/errors \
  -H "Content-Type: application/json" \
  -H "Checkend-Ingestion-Key: your-ingestion-key" \
  -d '{
    "error_class": "PaymentError",
    "error_message": "Card declined: insufficient funds",
    "fingerprint": "payment-declined-insufficient-funds"
  }'
All errors with the same custom fingerprint will be grouped together, regardless of their class or backtrace.

Use Cases for Custom Fingerprints

  • Group by error type

    Group all payment failures together regardless of the specific reason.

  • Group by feature

    Group all errors from a specific feature like "checkout" or "user-registration".

  • Separate environments

    Include environment in the fingerprint to separate staging from production errors.

Problems vs Notices

In Checkend terminology:

  • Notice — A single error occurrence
  • Problem — A group of similar notices (based on fingerprint)

When you resolve a problem, you're marking all related notices as resolved. If a new notice comes in with the same fingerprint, the problem will be reopened.