Skip to main content

proxyWithLog

function proxyWithLog(logger, scope): <T>(obj, name) => T;

Curried helper that wraps an object in a logging proxy. Useful when several objects share the same logger and scope and only differ by name.

Parameters​

ParameterTypeDescription
loggerProxyLoggerReceiver of the log records.
scopestringHigher-level grouping shared by every object produced by the returned function.

Returns​

<T>(obj, name): T;

Type Parameters​

Type Parameter
T extends object

Parameters​

ParameterType
objT
namestring

Returns​

T

Example​

const wrap = proxyWithLog(logger, 'media');

const trackedCamera = wrap(camera, 'Camera');
const trackedMic = wrap(microphone, 'Microphone');