MCPcopy Create free account
hub / github.com/hashintel/hash / buildEnvelope

Method buildEnvelope

apps/hash-api/src/telemetry/telemetry.ts:65–86  ·  view source on GitHub ↗

The single place a request-scoped envelope is built.

(
    req: Request,
    opts: { frontendProvided: boolean; anonymousId?: string },
  )

Source from the content-addressed store, hash-verified

63
64 /** The single place a request-scoped envelope is built. */
65 private buildEnvelope(
66 req: Request,
67 opts: { frontendProvided: boolean; anonymousId?: string },
68 ): EventEnvelope {
69 const { user } = req;
70 return {
71 userId: user?.accountId,
72 anonymousId: user ? undefined : opts.anonymousId,
73 context: {
74 ip: req.ip,
75 userAgent: req.headers["user-agent"],
76 app: { environment: telemetryEnvironment, frontendDomain },
77 },
78 baseProperties: {
79 environment: telemetryEnvironment,
80 frontendDomain,
81 shortname: user?.shortname,
82 frontendProvided: opts.frontendProvided,
83 },
84 timestamp: new Date(),
85 };
86 }
87
88 /** Envelope for req-less callers: no IP/user-agent, never frontend-provided. */
89 private buildActorEnvelope(actor: TelemetryActor): EventEnvelope {

Callers 2

trackMethod · 0.95
trackFromClientMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected