Skip to main content

Instrument

Instrument

This decorator is used to apply instrumentation to a class. It is intended to be used in conjunction with an InstrumentationStrategy which defines how the instrumentation should be applied.

In order for the instrumentation to be applied, the VENDURE_ENABLE_INSTRUMENTATION environment variable (exported from the @vendure/core package as ENABLE_INSTRUMENTATION_ENV_VAR) must be set to true. This is done to avoid the overhead of instrumentation in environments where it is not needed.

For more information on how instrumentation is used, see docs on the TelemetryPlugin.

Example

import { Instrument } from '@vendure/core';
import { Injectable } from '@nestjs/common';

@Injectable()
@Instrument()
export class MyService {

// Calls to this method will be instrumented
myMethod() {
// ...
}
}
Signature
function Instrument(): ClassDecorator