Network requirements
The observability plugin sends OpenTelemetry data to LaunchDarkly athttps://otel.observability.app.launchdarkly.com:4318 by default. Port 4318 is the standard OpenTelemetry HTTP/Protobuf port.
If your network restricts outbound traffic to port 443, override the OTLP endpoint to use HTTPS on port 443. You have two ways to override the endpoint:
* Use the configuration option for your SDK. For example, in .NET, call
WithOtlpEndpoint("https://otel.observability.app.launchdarkly.com:443") when you build the plugin.* Set the
If your application emits OpenTelemetry data locally but none of it appears in LaunchDarkly, check whether your network allows outbound traffic to port 4318. A restrictive firewall is a common cause of missing backend observability data.
OTEL_EXPORTER_OTLP_ENDPOINT environment variable to https://otel.observability.app.launchdarkly.com:443. This variable works with all server-side SDKs.Server-side SDKs
This feature is available in the observability plugin for the following server-side SDKs:.NET (server-side)
Expand .NET (server-side) code sample
Expand .NET (server-side) code sample
You can configure the observability plugin for the .NET (server-side) SDK through a mix of environment variables, OpenTelemetry configuration options, and plugin configuration options.Use the For a complete list of configuration options, read
ObservabilityPlugin.ObservabilityPluginBuilder to set the options. In many cases, you can use an OpenTelemetry-specific environment variable instead, if you prefer. For example, if you want to set a custom OTLP endpoint, you can either set OtlpEndpoint in your ObservabilityPlugin.ObservabilityPluginBuilder, or you can set the OTEL_EXPORTER_OTLP_ENDPOINT environment variable.Here’s how:ObservabilityPlugin.ObservabilityPluginBuilder.Go
Expand Go code sample
Expand Go code sample
Node.js (server-side)
Expand Node.js (server-side) code sample
Expand Node.js (server-side) code sample
You can configure the observability plugin for the Node.js (server-side) SDK through a mix of environment variables, OpenTelemetry configuration options, and plugin configuration options.For a complete list of configuration options, read
Environment variables
The environment variables specify where to enable instrumentation:LAUNCHDARKLY_OTEL_NODE_ENABLE_FILESYSTEM_INSTRUMENTATIONenables file system instrumentation. It defaults tofalse.LAUNCHDARKLY_OTEL_NODE_ENABLE_OUTGOING_HTTP_INSTRUMENTATIONenables outgoing HTTP instrumentation. It defaults totrue. It only affects outgoing HTTP requests instrumented by@opentelemetry/instrumentation-http.
OpenTelemetry configuration options
If you are already using OpenTelemetry configuration options for Node in your application, you can continue to use them.When you use the observability plugin, the@opentelemetry/instrumentation-fs instrumentation behaves as follows:- The instrumentation will only be enabled if
LAUNCHDARKLY_OTEL_NODE_ENABLE_FILESYSTEM_INSTRUMENTATIONistrue. - The instruction is unaffected by the
OTEL_NODE_ENABLED_INSTRUMENTATIONSandOTEL_NODE_DISABLED_INSTRUMENTATIONSOpenTelemetry environment variables.
Plugin configuration options
To specify the observability plugin configuration options, use theNodeOptions interface to set the options.Here’s how:NodeOptions.Python
Expand Python code sample
Expand Python code sample
You can configure the observability plugin for the Python SDK through a mix of environment variables, OpenTelemetry configuration options, and plugin configuration options.Use the For a complete list of configuration options, read
ObservabilityConfig class to set the options. In many cases, you can use an OpenTelemetry-specific environment variable instead, if you prefer. For example, if you want to set a custom OTLP endpoint, you can either set otlp_endpoint in your ObservabilityConfig, or you can set the OTEL_EXPORTER_OTLP_ENDPOINT environment variable.Here’s how:ObservabilityConfig.Ruby
Expand Ruby code sample
Expand Ruby code sample
You can configure options for the Ruby observability plugin when you initialize the SDK, or using environment variables.For a complete list of configuration options, read Plugin Options.
Plugin configuration options
The plugin constructor accepts optional keyword arguments for configuration.Here’s how:Environment variables
The environment variables specify where to enable instrumentation:LAUNCHDARKLY_SDK_KEYprovides the LaunchDarkly SDK key. This key is automatically extracted from the client during initialization.OTEL_EXPORTER_OTLP_ENDPOINTprovides a custom OTLP endpoint.OTEL_SERVICE_NAMEprovides the service name, if not specified in plugin options.
Environment configuration is automaticThe environment associated with your SDK key is automatically determined by the backend, so you don’t need to configure it separately.