mirror of
https://github.com/alkimake/paperclip.git
synced 2026-06-16 10:50:38 +09:00
50 lines
1.3 KiB
TypeScript
50 lines
1.3 KiB
TypeScript
|
|
import type { TelemetryClient } from "./client.js";
|
||
|
|
|
||
|
|
export function trackInstallStarted(client: TelemetryClient, dims: { setupMode: string }): void {
|
||
|
|
client.track("install.started", dims);
|
||
|
|
}
|
||
|
|
|
||
|
|
export function trackInstallCompleted(
|
||
|
|
client: TelemetryClient,
|
||
|
|
dims: { setupMode: string; dbMode: string; deploymentMode: string },
|
||
|
|
): void {
|
||
|
|
client.track("install.completed", dims);
|
||
|
|
}
|
||
|
|
|
||
|
|
export function trackCompanyImported(
|
||
|
|
client: TelemetryClient,
|
||
|
|
dims: { sourceType: string; sourceRef: string; isPrivate: boolean },
|
||
|
|
): void {
|
||
|
|
const ref = dims.isPrivate ? client.hashPrivateRef(dims.sourceRef) : dims.sourceRef;
|
||
|
|
client.track("company.imported", {
|
||
|
|
sourceType: dims.sourceType,
|
||
|
|
sourceRef: ref,
|
||
|
|
sourceRefHashed: dims.isPrivate,
|
||
|
|
});
|
||
|
|
}
|
||
|
|
|
||
|
|
export function trackAgentFirstHeartbeat(
|
||
|
|
client: TelemetryClient,
|
||
|
|
dims: { adapterType: string },
|
||
|
|
): void {
|
||
|
|
client.track("agent.first_heartbeat", dims);
|
||
|
|
}
|
||
|
|
|
||
|
|
export function trackAgentTaskCompleted(
|
||
|
|
client: TelemetryClient,
|
||
|
|
dims: { adapterType: string },
|
||
|
|
): void {
|
||
|
|
client.track("agent.task_completed", dims);
|
||
|
|
}
|
||
|
|
|
||
|
|
export function trackErrorHandlerCrash(
|
||
|
|
client: TelemetryClient,
|
||
|
|
dims: { errorName: string; route: string; method: string },
|
||
|
|
): void {
|
||
|
|
client.track("error.handler_crash", {
|
||
|
|
errorName: dims.errorName,
|
||
|
|
route: dims.route,
|
||
|
|
method: dims.method,
|
||
|
|
});
|
||
|
|
}
|