Skip to main content

Connect error tracking

Error tracking connects runtime exceptions to the product that owns the code.

Let your coding agent wire it​

The telemetry-wireup skill does the wiring for you. Install it:

tiden skill install telemetry-wireup

tiden setup installs it too, and tiden skill update refreshes it. Confirm it is present:

tiden skill list --format text

Then ask your agent to "set up Tiden error tracking". The skill finds each app your repository deploys and adds the matching Tiden SDK (browser, PHP, Laravel, Go or Python) next to any error tracker you already run, without changing that tracker. It passes the DSN, release and environment in through environment variables, so the SDK stays off until TIDEN_DSN is set, and adds source-map upload for browser bundles. For a stack with no Tiden SDK, it points you to the custom ingest contract.

The skill asks you when it cannot tell the release or the environment. It never writes the DSN or a token into the repository: it names TIDEN_DSN (create the DSN in step 1) and the TIDEN_API_TOKEN CI secret for source maps, and tells you where to store each. It leaves the change as a diff to review and never pushes or deploys. Next, announce your releases with the release-wireup skill.

The numbered steps below remain the manual alternative.

1. Create a DSN​

  1. Open a product.
  2. Select Issues.
  3. Open setup.
  4. Create or copy a DSN.

Store the DSN as an application runtime secret such as TIDEN_DSN.

2. Install an SDK​

Browser JavaScript:

npm install @tiden/telemetry-browser

PHP:

composer require tiden/telemetry-php

Laravel:

composer require tiden/telemetry-laravel

Go:

go get github.com/qase-tms/tiden-telemetry-go

Python:

pip install tiden-telemetry

3. Initialize the SDK​

Browser:

import { Tiden } from '@tiden/telemetry-browser'

Tiden.init({
dsn: import.meta.env.VITE_TIDEN_DSN,
release: 'my-app@1.2.3',
environment: 'production',
})

Go:

import tiden "github.com/qase-tms/tiden-telemetry-go"

_ = tiden.Init(tiden.Options{
DSN: os.Getenv("TIDEN_DSN"),
Release: "my-app@1.2.3",
Environment: "production",
})

Python:

import tiden_telemetry as tiden

tiden.init(
dsn=os.environ["TIDEN_DSN"],
release="my-app@1.2.3",
environment="production",
)

4. Send a test event​

Capture a handled exception or message:

try {
await checkout()
} catch (err) {
Tiden.captureException(err)
}

Then open Issues. New events may briefly show as processing while grouping finishes.

5. Add source maps for browser apps​

Install:

npm install -D @tiden/telemetry-sourcemaps

Then follow Upload source maps.

6. Review and resolve issues​

For each issue:

  1. Open the issue detail.
  2. Inspect stack trace, breadcrumbs, request data, user context, tags, and release/environment.
  3. Resolve when fixed.
  4. Ignore only when the issue is expected and not actionable.

If a resolved issue receives a newer event, Tiden marks it as a regression.