UNPKG

backtrace-js

Version:

Backtrace.io error reporting tool for client-side applications

62 lines (61 loc) 2.67 kB
import { IBacktraceClientOptions, InitBacktraceClientOptions } from './model/backtraceClientOptions'; import { BacktraceMetrics } from './model/backtraceMetrics'; import { BacktraceReport } from './model/backtraceReport'; import { BacktraceResult } from './model/backtraceResult'; import { Breadcrumbs } from './model/breadcrumbs'; /** * Backtrace client */ export declare class BacktraceClient { options: IBacktraceClientOptions; breadcrumbs: Breadcrumbs; readonly attributes: { [index: string]: any; }; private _backtraceApi; readonly _backtraceMetrics: BacktraceMetrics | undefined; private _clientRateLimit; constructor(clientOptions: InitBacktraceClientOptions); private getClientAttributes; /** * Memorize selected values from application. * Memorized attributes will be available in your Backtrace report. * Memorized attributes will be only available for one report. * @param key attribute key * @param value attribute value */ memorize(key: string, value: any): void; /** * Set custom client attribute * Memorized attributes will be available in your Backtrace report. * Memorized attributes will be only available for one report. * @param key attribute key * @param value attribute value */ setAttribute(key: string, value: any): void; createReport(payload: Error | string, reportAttributes?: object | undefined, attachment?: string | object): BacktraceReport; /** * Send report asynchronously to Backtrace * @param payload report payload * @param reportAttributes attributes * @param attachment data to be converted to a Blob and sent as attachment with report */ reportAsync(payload: Error | string, reportAttributes?: object | undefined, attachment?: string | object): Promise<BacktraceResult>; /** * Send report synchronosuly to Backtrace * @param payload report payload - error or string * @param reportAttributes attributes * @param attachment data to be converted to a Blob and sent as attachment with report */ reportSync(payload: Error | string, reportAttributes?: object | undefined, attachment?: string | object): BacktraceResult; sendReport(report: BacktraceReport, callback?: (err?: Error, res?: BacktraceResult) => void): BacktraceResult; sendAsync(report: BacktraceReport): Promise<BacktraceResult>; private testClientLimits; private samplingHit; private getSubmitUrl; private registerHandlers; private registerPromiseHandler; private registerGlobalHandler; private readAttributes; private getOptionsWithDefaults; }