Optional
allWhether all context attributes (except the contexy key) should be marked as private, and not sent to LaunchDarkly.
By default, this is false.
Optional
applicationInformation about the application where the LaunchDarkly SDK is running.
Note that this config option may be renamed to applicationInfo in a future major version to be consistent with other SDKs.
Optional
id?: stringA unique identifier representing the application where the LaunchDarkly SDK is running.
This can be specified as any string value as long as it only uses the following characters: ASCII letters, ASCII digits, period, hyphen, underscore. A string containing any other characters will be ignored.
Example: authentication-service
Optional
name?: stringA human-friendly application name representing the application where the LaunchDarkly SDK is running.
This can be specified as any string value as long as it only uses the following characters: ASCII letters, ASCII digits, period, hyphen, underscore. A string containing any other characters will be ignored.
Optional
payloadLaunchDarkly Server SDKs historically downloaded all flag configuration and segments for a particular environment during initialization.
For some customers, this is an unacceptably large amount of data, and has contributed to performance issues within their products.
Filtered environments aim to solve this problem. By allowing customers to specify subsets of an environment's flags using a filter key, SDKs will initialize faster and use less memory.
This payload filter key only applies to the default streaming and polling data sources. It will not affect TestData or FileData data sources, nor will it be applied to any data source provided through the featureStore config property.
Optional
version?: stringA unique identifier representing the version of the application where the LaunchDarkly SDK is running.
This can be specified as any string value as long as it only uses the following characters: ASCII letters, ASCII digits, period, hyphen, underscore. A string containing any other characters will be ignored.
Example: 1.0.0
(standard version string) or abcdef
(sha prefix)
Optional
versionA human-friendly name representing the version of the application where the LaunchDarkly SDK is running.
This can be specified as any string value as long as it only uses the following characters: ASCII letters, ASCII digits, period, hyphen, underscore. A string containing any other characters will be ignored.
Optional
baseThe base URI for the LaunchDarkly server.
Most users should use the default value.
Optional
bigAdditional parameters for configuring the SDK's Big Segments behavior.
Big Segments are a specific type of user segments. For more information, read the LaunchDarkly documentation: https://docs.launchdarkly.com/home/users/big-segments
By default, there is no configuration and Big Segments cannot be evaluated. In this
case, any flag evaluation that references a Big Segment will behave as if no users
are included in any Big Segments, and the LDEvaluationReason associated with any
such flag evaluation will have a bigSegmentsStatus
of "NOT_CONFIGURED"
.
Optional
capacityThe capacity of the analytics events queue.
The client buffers up to this many events in memory before flushing. If the capacity is exceeded before the buffer is flushed, events will be discarded.
Optional
contextThe number of context keys that the event processor can remember at any one time, so that duplicate context details will not be sent in analytics events.
Defaults to 1000.
Optional
contextThe interval (in seconds) at which the event processor will reset its set of known context keys.
Defaults to 300.
Optional
diagnosticSet to true to opt out of sending diagnostics data.
Unless the diagnosticOptOut
field is set to true, the client will send some diagnostics data
to the LaunchDarkly servers in order to assist in the development of future SDK improvements.
These diagnostics consist of an initial payload containing some details of SDK in use, the
SDK's configuration, and the platform the SDK is being run on, as well as payloads sent
periodically with information on irregular occurrences such as dropped events.
Optional
diagnosticThe interval at which periodic diagnostic data is sent, in seconds.
The default is 900 (every 15 minutes) and the minimum value is 60 (every minute).
Optional
eventsThe base URI for the LaunchDarkly events server.
Most users should use the default value.
Optional
featureA component that stores feature flags and related data received from LaunchDarkly.
By default, this is an in-memory data structure. Database integrations are also available, as described in the SDK features guide.
Some implementations provide the store implementation object itself, while others provide a factory function that creates the store implementation based on the SDK configuration; this property accepts either.
Optional
flushThe interval in between flushes of the analytics events queue, in seconds.
Optional
hooksInitial set of hooks for the client.
Hooks provide entrypoints which allow for observation of SDK functions.
LaunchDarkly provides integration packages, and most applications will not
need to implement their own hooks. Refer to the @launchdarkly/node-server-sdk-otel
for instrumentation for the @launchdarkly/node-server-sdk
.
Example:
import { init } from '@launchdarkly/node-server-sdk';
import { TracingHook } from '@launchdarkly/node-server-sdk-otel';
const client = init('my-sdk-key', { hooks: [new TracingHook()] });
Optional
loggerConfigures a logger for warnings and errors generated by the SDK.
The logger can be any object that conforms to the LDLogger interface.
For a simple implementation that lets you filter by log level, see
basicLogger. You can also use an instance of winston.Logger
from
the Winston logging package.
If you do not set this property, the SDK uses basicLogger with a
minimum level of info
.
Optional
offlineWhether the client should be initialized in offline mode.
Optional
pollThe time between polling requests, in seconds. Ignored in streaming mode.
Optional
privateThe names of any context attributes that should be marked as private, and not sent to LaunchDarkly.
Optional
proxyAllows you to specify configuration for an optional HTTP proxy.
Optional
sendWhether to send analytics events back to LaunchDarkly. By default, this is true.
Optional
streamWhether streaming mode should be used to receive flag updates.
This is true by default. If you set it to false, the client will use polling. Streaming should only be disabled on the advice of LaunchDarkly support.
Optional
streamSets the initial reconnect delay for the streaming connection, in seconds.
The streaming service uses a backoff algorithm (with jitter) every time the connection needs to be reestablished. The delay for the first reconnection will start near this value, and then increase exponentially for any subsequent connection failures.
The default value is 1.
Optional
streamThe base URI for the LaunchDarkly streaming server.
Most users should use the default value.
Optional
timeoutThe connection timeout, in seconds.
Optional
tlsAdditional parameters to pass to the Node HTTPS API for secure requests. These can include any
of the TLS-related parameters supported by https.request()
, such as ca
, cert
, and key
.
For more information, see the Node documentation for https.request()
and tls.connect()
.
Optional
updateA component that obtains feature flag data and puts it in the feature store.
By default, this is the client's default streaming or polling component.
Optional
errorHandler: ((e) => void)Optional
Optional
useWhether you are using the LaunchDarkly relay proxy in daemon mode.
In this configuration, the client will not connect to LaunchDarkly to get feature flags, but will instead get feature state from a database (Redis or another supported feature store integration) that is populated by the relay. By default, this is false.
Optional
wrapperFor use by wrapper libraries to set an identifying name for the wrapper being used.
This will be sent in User-Agent headers during requests to the LaunchDarkly servers to allow recording metrics on the usage of these wrapper libraries.
Optional
wrapperFor use by wrapper libraries to report the version of the library in use.
If wrapperName
is not set, this field will be ignored. Otherwise the version string will be
included in the User-Agent headers along with the wrapperName
during requests to the
LaunchDarkly servers.
Generated using TypeDoc
LaunchDarkly initialization options.