0.8.2 • Published 8 months ago

@mtth/stl-errors v0.8.2

Weekly downloads
-
License
MIT
Repository
github
Last release
8 months ago

Standard errors

Motivation

Good error handling is a prerequisite for good telemetry. To help with this, @mtth/stl-errors provides a simple StandardError interface which exposes powerful building blocks:

  • Namespaced error codes;
  • Causal chains;
  • Optional structured data.

Quickstart

Standard errors are best created via errorFactories which provides type-safe error creation functions along with their codes:

import {errorFactories} from '@mtth/stl-errors';

const [errors, codes] = errorFactories({
  definitions: {
    invalidFoo: (foo: string) => ({
      message: `The input foo ${foo} was invalid`,
      tags: {foo},
    }),
    missingBar: 'The bar was missing',
  },
});

// Error with code `ERR_INVALID_FOO` (`codes.InvalidFoo`).
const err1 = errors.invalidFoo('fff');

// Error with code `ERR_MISSING_BAR` (`codes.MissingBar`).
const err2 = errors.missingBar();
0.8.2

8 months ago

0.8.1

8 months ago

0.8.0

8 months ago

0.7.1

9 months ago

0.7.0

9 months ago

0.6.0

10 months ago

0.5.0

10 months ago

0.4.2

10 months ago

0.4.1

10 months ago

0.4.0

10 months ago

0.3.0

10 months ago

0.2.0

10 months ago