Interface ServerInternalOptions

This is for internal use only.

Edge sdks use clientSideID to query feature stores. They also send analytics using this clientSideID. This is a hybrid behavior because they are based on js-server-common, but uses the clientSideID instead of the sdkKey for the above reasons. These internal options allow the edge sdks to use the EventSender to send analytics to the correct LD endpoints using the clientSideId.

Hierarchy

Properties

analyticsEventPath?: string
diagnosticEventPath?: string
disableBackgroundEventFlush?: boolean

When true, the event processor is constructed without starting its periodic background work (the flush and context-deduplication interval timers, and the diagnostic timer when diagnostics are enabled). Events are still recorded and are delivered only via explicit flush() calls.

This is intended for per-request edge SDKs that flush explicitly (for example via a runtime's waitUntil) and must not leave interval timers running. A live interval timer keeps the runtime event loop alive and roots the whole client graph in memory, which for a per-request client is a leak.

getImplementationHooks?: ((environmentMetadata) => Hook[])

Type declaration

highTimeoutThreshold?: number

In seconds. Log a warning if identifyTimeout is greater than this value.

Mobile - 15s. Browser - 5s. Server - 60s.

includeAuthorizationHeader?: boolean
instanceId?: string

Per-SDK-instance identifier sent as the X-LaunchDarkly-Instance-Id header on every outbound request. The SDK that owns instance-id generation (e.g. the Node server SDK) supplies this; SDKs that do not advertise instance-id support (edge SDKs) leave it undefined and the header is omitted.

userAgentHeaderName?: "user-agent" | "x-launchdarkly-user-agent"

Generated using TypeDoc