IronTelemetry SDK for JavaScript/TypeScript
Go to file
David Friedel 88246a8509 Update README with branded header and documentation links
- Add centered logo and title with product branding
- Add links to product website and documentation
- Add badges for package manager and license
- Add Other SDKs table with cross-references
- Add Support section with dev@ironservices.io email
- Update repository links to git.marketally.com

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 10:40:21 +00:00
src Add logMessage, getBreadcrumbs, and enableDebugLogging features 2025-12-26 11:32:00 +00:00
.gitignore Initial SDK implementation 2025-12-25 10:04:46 +00:00
LICENSE Initial commit 2025-12-25 04:55:16 -05:00
README.md Update README with branded header and documentation links 2025-12-27 10:40:21 +00:00
package.json Initial SDK implementation 2025-12-25 10:04:46 +00:00
tsconfig.cjs.json Initial SDK implementation 2025-12-25 10:04:46 +00:00
tsconfig.esm.json Initial SDK implementation 2025-12-25 10:04:46 +00:00
tsconfig.json Initial SDK implementation 2025-12-25 10:04:46 +00:00
tsconfig.types.json Initial SDK implementation 2025-12-25 10:04:46 +00:00

README.md

IronTelemetry

IronTelemetry SDK for JavaScript/TypeScript

Error monitoring and crash reporting for modern applications

npm version License: MIT

WebsiteDocumentationJavaScript GuideGitHub


IronTelemetry helps you capture exceptions, track user journeys, and get actionable insights to fix issues faster. Built for developers who want simple, powerful error monitoring without the complexity.

Features

  • Exception Capture - Automatically capture and report exceptions with full stack traces
  • Journey Tracking - Understand what users did before an error occurred
  • Breadcrumbs - Add context with custom breadcrumbs and metadata
  • Source Maps - See original source code in stack traces
  • Lightweight - Minimal footprint, no impact on performance
  • TypeScript First - Full TypeScript support with type definitions

Installation

npm install @ironservices/telemetry
# or
yarn add @ironservices/telemetry
# or
pnpm add @ironservices/telemetry

Quick Start

Initialize the SDK

import IronTelemetry from '@ironservices/telemetry';

IronTelemetry.init('https://pk_live_xxx@irontelemetry.com');

Capture Exceptions

try {
  doSomething();
} catch (error) {
  IronTelemetry.captureException(error);
  throw error;
}

// Or use the extension method
try {
  doSomething();
} catch (error) {
  throw error.capture();
}

Track User Journeys

// Start a journey
const journey = IronTelemetry.startJourney('checkout', { userId: 'user-123' });

// Add steps
journey.step('add_to_cart', { productId: 'prod-456' });
journey.step('enter_shipping');
journey.step('enter_payment');

// Complete or fail
journey.complete(); // or journey.fail('Payment declined');

Add Breadcrumbs

IronTelemetry.addBreadcrumb({
  category: 'user',
  message: 'Clicked checkout button',
  level: 'info',
});

Set User Context

IronTelemetry.setUser({
  id: 'user-123',
  email: 'user@example.com',
  name: 'John Doe',
});

Framework Integrations

Express.js

import express from 'express';
import IronTelemetry from '@ironservices/telemetry';

const app = express();

// Add error handler
app.use(IronTelemetry.express.errorHandler());

React

import { ErrorBoundary } from '@ironservices/telemetry/react';

function App() {
  return (
    <ErrorBoundary fallback={<ErrorPage />}>
      <MyApp />
    </ErrorBoundary>
  );
}

Configuration Options

IronTelemetry.init('https://pk_live_xxx@irontelemetry.com', {
  environment: 'production',
  release: '1.0.0',
  sampleRate: 1.0,
  beforeSend: (event) => {
    // Filter or modify events
    return event;
  },
});

Documentation

For complete documentation, visit irontelemetry.com/docs.

Other SDKs

Platform Package
.NET IronTelemetry.Client
Python irontelemetry
Go irontelemetry-go
Java irontelemetry-java
Rust irontelemetry

Support

License

MIT License - see LICENSE for details.