-Expects these arguments in any log call:
-
-- `scope` - e.g. file:method
-- `message` - text
-- `data` - object
-- any additional arguments are included as an array, but not scrubbed
+- `new Logger(options, commonObject, asyncLocalStorage, backend)`
+ - `commonObject` will be merged into every log
+ - `asyncLocalStorage`, if provided, should store an object, which will also be merged into log
+ - `backend` is `console` by default, but may be anything implementing the same log-level functions
+
+- `error(scope, message, data, ...)`
+ - `scope` - identifies source of message, e.g. 'class:method'
+ - `message` - text to be logged
+ - `data` - object to be logged, can be scrubbed of sensitive fields, and will be serialized with provided replacers
+ - any additional arguments are included as an array
+- `warn(scope, message, data, ...)`
+- `info(scope, message, data, ...)`
+- `log(scope, message, data, ...)`
+- `debug(scope, message, data, ...)`