Reference
leylines/browser
Constants
logger
Side-effect-free singleton browser logger. Call logger.connect before entries are sent.
export const logger: BrowserLoggerSingleton;
Types
BrowserLogger
Browser logger API used by application code.
export interface BrowserLogger {
debug(scope: string, message: string, properties?: JsonObject): void;
info(scope: string, message: string, properties?: JsonObject): void;
warn(scope: string, message: string, properties?: JsonObject): void;
error(scope: string, message: string, properties?: JsonObject, error?: unknown): void;
write(level: LogLevel, scope: string, message: string, properties?: JsonObject, error?: unknown): void;
}
Properties
debugWrite a debug entry for a dotted domain scope.infoWrite an info entry for a dotted domain scope.warnWrite a warning entry for a dotted domain scope.errorWrite an error entry for a dotted domain scope, optionally with normalized error details.writeWrite an entry at an explicit level for a dotted domain scope.
BrowserLoggerConnectOptions
Options for connecting the singleton browser logger.
export interface BrowserLoggerConnectOptions extends BrowserLoggerOptions {
captureConsole?: boolean | LogLevel[];
captureErrors?: boolean;
captureRejections?: boolean;
}
Properties
captureConsoleCapture console methods.truecaptures all levels; an array captures selected levels.captureErrorsCapture uncaught browser errors. Defaults totrue.captureRejectionsCapture unhandled promise rejections. Defaults totrue.
š BrowserLoggerConnectOptions on GitHub
BrowserLoggerOptions
Transport and inherited context for the browser logger.
export interface BrowserLoggerOptions {
endpoint: string;
scope?: string;
metadata?: JsonObject;
properties?: JsonObject;
fetch?: typeof fetch;
}
Properties
endpointLocal ingestion endpoint that receives JSON log entries.scopeRoot scope for entries. Defaults tobrowser.metadataMetadata inherited by every browser entry.propertiesStructured properties inherited by every browser entry.fetchFetch implementation to use. Defaults to globalfetch.
š BrowserLoggerOptions on GitHub
BrowserLoggerSingleton
Singleton browser logger that can be connected to a runtime ingestion endpoint.
export interface BrowserLoggerSingleton extends BrowserLogger {
connect(options: BrowserLoggerConnectOptions): BrowserLoggerSingleton;
}
Properties
connectConnect or reconfigure the singleton logger and optional browser capture hooks.