Getting started

Sending custom events

Track domain-specific signals from any code path.

The SDK's automatic instrumentation covers the basics. For everything else, emit custom events.

Custom metrics

import { metric } from '@uptimeclarity/node';
 
metric('checkout.completed', 1, {
  plan: 'pro',
  source: 'web',
});

Metrics are aggregated server-side. Tags are indexed for filtering.

Custom traces

Wrap an async function to time it and surface failures:

import { trace } from '@uptimeclarity/node';
 
await trace('reports.weekly', async () => {
  await generateReport();
});

If the wrapped function throws, the error is captured automatically.

Custom logs

import { log } from '@uptimeclarity/node';
 
log.info('user.signup', { plan: 'pro' });
log.error('payment.failed', err);

console.* is also automatically captured — explicit log.* calls just give you typed levels and structured tags.