@backtrace/sdk-core
Version:
Backtrace-JavaScript SDK core library
51 lines (50 loc) • 2.7 kB
TypeScript
import { BacktraceBreadcrumbsSettings } from '../../model/configuration/BacktraceConfiguration.js';
import { AttributeType } from '../../model/data/BacktraceData.js';
import { BacktraceReport } from '../../model/report/BacktraceReport.js';
import { BacktraceModule, BacktraceModuleBindData } from '../BacktraceModule.js';
import { BreadcrumbsEventSubscriber } from './events/BreadcrumbsEventSubscriber.js';
import { BacktraceBreadcrumbs, BreadcrumbLogLevel, BreadcrumbsSetup, BreadcrumbsStorage, BreadcrumbsStorageFactory, BreadcrumbType } from './index.js';
export declare class BreadcrumbsManager implements BacktraceBreadcrumbs, BacktraceModule {
/**
* Breadcrumbs type
*/
readonly breadcrumbsType: BreadcrumbType;
/**
* Breadcrumbs Log level
*/
readonly logLevel: BreadcrumbLogLevel;
/**
* Determines if the breadcrumb manager is enabled.
*/
private _enabled;
private readonly _limits;
private readonly _eventSubscribers;
private readonly _interceptor?;
private _storage;
constructor(configuration?: BacktraceBreadcrumbsSettings, options?: BreadcrumbsSetup);
addEventSubscriber(subscriber: BreadcrumbsEventSubscriber): void;
setStorage(storageFactory: BreadcrumbsStorageFactory): void;
/**
* @deprecated Use `useStorage` with `BreadcrumbsStorageFactory`.
*/
setStorage(storage: BreadcrumbsStorage): void;
dispose(): void;
bind({ client, attachmentManager }: BacktraceModuleBindData): void;
initialize(): void;
verbose(message: string, attributes?: Record<string, AttributeType> | undefined): boolean;
debug(message: string, attributes?: Record<string, AttributeType> | undefined): boolean;
info(message: string, attributes?: Record<string, AttributeType> | undefined): boolean;
warn(message: string, attributes?: Record<string, AttributeType> | undefined): boolean;
error(message: string, attributes?: Record<string, AttributeType> | undefined): boolean;
log(message: string, level: BreadcrumbLogLevel, attributes?: Record<string, AttributeType> | undefined): boolean;
logReport(report: BacktraceReport): boolean;
addBreadcrumb(message: string, level: BreadcrumbLogLevel, type: BreadcrumbType, attributes?: Record<string, AttributeType> | undefined): boolean;
/**
* The expectation is, message should always be defined and passed as string.
* However, logger can pass as a message an object or any other unknown type.
* To be sure the code won't break, this method ensures the message is always a string
* no matter what the logger gives us.
* @param message breadcrumb message
*/
private prepareBreadcrumbMessage;
}