Class PerformanceTracker<T>
Constructors
constructor
new PerformanceTracker<T>( fn: () => T | Promise<T>, options?: { name?: string } & { onEnd?: ( arg: { duration: number; metrics: PerformanceTrackerMetrics; name: string; result: T; }, ) => void; onStart?: (arg: { name: string; startTs: number }) => void; },): PerformanceTracker<T> Parameters
- fn: () => T | Promise<T>
Optional
options: { name?: string } & {
onEnd?: (
arg: {
duration: number;
metrics: PerformanceTrackerMetrics;
name: string;
result: T;
},
) => void;
onStart?: (arg: { name: string; startTs: number }) => void;
}
Properties
metrics
Optional
Readonly
options
options?: { name?: string } & { onEnd?: ( arg: { duration: number; metrics: PerformanceTrackerMetrics; name: string; result: T; }, ) => void; onStart?: (arg: { name: string; startTs: number }) => void;} Methods
run
run<O extends AnyFunction>(fn?: O, name?: string): Promise<ReturnType<O>> Parameters
- fn: O = ...
Optional
name: string
Returns Promise<ReturnType<O>>
A simple tracker to measure the performance of a function/operation.
Please note that this tracker does not handle runtime errors.
Example