Ledger logs central point
npm install @ledgerhq/logs
Utility library that is used by all Ledger libraries to dispatch logs so we can deal with them in a unified way.
#### Table of Contents
* Log
* type
* data
* context
* id
* log
* Parameters
* trace
* Parameters
* LocalTracer
* Parameters
* withType
* Parameters
* withContext
* Parameters
* withUpdatedContext
* Parameters
* listen
* Parameters
A Log object
#### type
A namespaced identifier of the log (not a level like "debug", "error" but more like "apdu", "hw", etc...)
Type: LogType
#### data
Data associated to the log event
Type: LogData
#### context
Context data, coming for example from the caller's parent, to enable a simple tracing system
Type: TraceContext
#### id
Unique id among all logs
Type: string
Logs something
#### Parameters
* type LogType a namespaced identifier of the log (it is not a level like "debug", "error" but more like "apdu-in", "apdu-out", etc...)
* message string? a clear message of the log associated to the type
* data LogData?
A simple tracer function, only expanding the existing log function
Its goal is to capture more context than a log function.
This is simple for now, but can be improved later.
#### Parameters
* context {type: LogType, message: string?, data: LogData?, context: TraceContext?} Anything representing the context where the log occurred
* context.type
* context.message
* context.data
* context.context
A simple tracer class, that can be used to avoid repetition when using the trace function
Its goal is to capture more context than a log function.
This is simple for now, but can be improved later.
#### Parameters
* `
* type
* A given type (not level) for the current local tracer ("hw", "withDevice", etc.)context
* Anything representing the context where the log occurred
#### withType
Create a new instance of the LocalTracer with an updated type
It does not mutate the calling instance, but returns a new LocalTracer,
following a simple builder pattern.
##### Parameters
* type LogType
Returns LocalTracer
#### withContext
Create a new instance of the LocalTracer with a new context
It does not mutate the calling instance, but returns a new LocalTracer,
following a simple builder pattern.
##### Parameters
* context TraceContext? A TraceContext, that can undefined to reset the context
Returns LocalTracer
#### withUpdatedContext
Create a new instance of the LocalTracer with an updated context,
on which an additional context is merged with the existing one.
It does not mutate the calling instance, but returns a new LocalTracer,
following a simple builder pattern.
##### Parameters
* contextToAdd TraceContext
Returns LocalTracer
Adds a subscribers to the emitted logs.
#### Parameters
* cb` Subscriber that is called for each future log() with the Log object
Returns Unsubscribe a function that can be called to unsubscribe the listener