File

shared/common/modules/apm/apm.module.ts

Methods

Static forRoot
forRoot()
Returns : DynamicModule
import {ApmService} from "./apm.service";
import {
  DynamicModule,
  Global,
  Module,
  Provider
} from "@nestjs/common";
import {APM_INSTANCE} from "./constants";
import {getInstance} from "./apm.util";
import {ElasticAPMInterceptor} from "./elastic-apm.interceptor";

const providers: Provider[] = [
  ApmService,
  {
    provide: APM_INSTANCE,
    useFactory: () => {
      return getInstance();
    },
  },
  ApmService,
  ElasticAPMInterceptor,
];

@Global()
@Module({})
export class ApmModule {
  public static forRoot(): DynamicModule {
    return {
      exports: [
        ApmService,
        APM_INSTANCE,
      ],
      module: ApmModule,
      providers,
    };
  }
}

results matching ""

    No results matching ""