@grouparoo/core
Version:
The Grouparoo Core
28 lines (23 loc) • 851 B
text/typescript
import { api } from "actionhero";
import { CLSInitializer } from "../classes/initializers/clsInitializer";
import { Telemetry } from "../modules/telemetry";
import { getGrouparooRunMode } from "../modules/runMode";
import { ConfigUser } from "../modules/configUser";
export class TelemetryInitializer extends CLSInitializer {
constructor() {
super();
this.name = "telemetry";
this.startPriority = 20; // start after codeConfig to include configured data
}
async initializeWithinTransaction() {}
async startWithinTransaction() {
if (getGrouparooRunMode() === "cli:config") {
await ConfigUser.loadOrStoreCustomerId();
await Telemetry.send("cli_config");
}
}
async stopWithinTransaction() {
if (getGrouparooRunMode() === "cli:run")
await Telemetry.send("cli_run", api.process.stopReasons);
}
}