@dizmo/functions-trace
v1.0.19
Published
call stack tracer
Downloads
8
Readme
@dizmo/functions-trace
Provides a @trace
decorator, which traces each method invocation for all methods of a class via a global CONSOLE
object, which is by default is the standard console
. Further, a @traceable
decorator is provided, which can selective enable (or disable) the tracing of a particular class method.
Tracing is applied only, when the global TRACE
variable is set to true
. It is also possible to set TRACE
to a number, in which case tracing is deferred by the corresponding amount of milliseconds. Also, setting it to 0
will imply, that the invocations will be logged as soon as possible - however still asynchronously.
Usage
Install
npm install @dizmo/functions-trace --save
Require
const { trace, traceable } = require('@dizmo/functions-trace');
Examples
import { trace, traceable } from '@dizmo/functions-trace';
@trace /* or: @trace(true|false) */
class MyClass {
// @traceable
public method_1() {}
// @traceable(true)
public method_2() {}
@traceable(false)
public method_3() {}
}
import { Global } from '@dizmo/functions-trace';
declare const global: Global;
global.TRACE = true; // or e.g. `200` milliseconds
Development
Clean
npm run clean
Build
npm run build
without linting and cleaning:
npm run -- build --no-lint --no-clean
with UMD bundling (incl. minimization):
npm run -- build --prepack
with UMD bundling (excl. minimization):
npm run -- build --prepack --no-minify
Lint
npm run lint
with auto-fixing:
npm run -- lint --fix
Test
npm run test
without linting, cleaning and (re-)building:
npm run -- test --no-lint --no-clean --no-build
Cover
npm run cover
without linting, cleaning and (re-)building:
npm run -- cover --no-lint --no-clean --no-build
Documentation
npm run docs
Publish
npm publish
initially (if public):
npm publish --access=public
Copyright
© 2020 dizmo AG, Switzerland