Troubleshoot
This topic gives troubleshooting steps for Optimizely Feature Experimentation.
Optimizely app failing to load
If parts of the Optimizely app fail to load, you may need to ask your IT department to change firewall settings.
Tools to help you troubleshoot
The following sections are some tools you can use to help you identify issues if results are not showing as you expect:
Logger
The logger logs information about your experiments to help you with debugging.
You can customize the log level to the kind of information you want to track and specify where log information is sent. See the following SDK documentation for implementing the logger:
- Customize the Android SDK logger
- Customize the C# SDK logger
- Customize the Flutter SDK logger
- Customize the Go SDK logger
- Customize the Java SDK logger
- Customize the JavaScript SDK v6+ logger
- Customize the JavaScript (Browser) SDK prior to v6 logger
- Customize the JavaScript (Node) SDK prior to v6 logger
- Customize the PHP SDK logger
- Customize the Python SDK logger
- Customize the React SDK logger
- Customize the React Native SDK logger
- Customize the Ruby SDK logger
- Customize the Swift SDK logger
Error handler
The error handler is called when unknown flag rule keys or event keys are referenced. You can provide your own custom error handler logic to standardize across your production environment. See the following SDK documentation for implementing the error handler:
- Customize the Android SDK logger
- Customize the C# SDK error handler
- Customize the Java SDK error handler
- Customize error handler for the JavaScript SDK v6+
- Customize error handler for the JavaScript (Browser) SDK prior to v6
- Customize the JavaScript (Node) error handler prior to v6
- Customize the PHP SDK error handler
- Customize the React SDK error handler
- Customize the React Native error handler
- Customize the Ruby SDK error handler
- Customize the Swift SDK error handler
Notification listeners
Use notification listeners to trigger callbacks when certain actions are triggered in the SDK. See the following SDK documentation for configuring a notification listener:
- Configure a notification listener using the Android SDK
- Configure a notification listener using the C# SDK
- Configure a notification listener using the Flutter SDK
- Configure a notification listener using the Go SDK
- Configure a notification listener using the Java SDK
- Configure a notification listener using the JavaScript SDK v6+
- Configure a notification listener using the JavaScript (Browser) SDK prior to v6
- Configure a notification listener using the JavaScript (Node) SDK prior to v6
- Configure a notification listener using the PHP SDK
- Configure a notification listener using the Python SDK
- Configure a notification listener using the React SDK
- Configure a notification listener using the React Native SDK
- Configure a notification listener using the Ruby SDK
- Configure a notification listener using the Swift SDK
Reasons in flag decisions
You can access log and error messages in the decision object returned by the Decide call. See the OptimizelyDecision topic in the SDK reference guides for your language for details:
- OptimizelyDecision for the Android SDK
- OptimizelyDecision for the C# SDK
- OptimizelyDecision for the Flutter SDK
- OptimizelyDecision for the Go SDK
- OptimizelyDecision for the Java SDK
- OptimizelyDecision for the JavaScript SDK v6+
- OptimizelyDecision for the JavaScript (Browser) SDK prior to v6
- OptimizelyDecision for the JavaScript (Node) SDK prior to v6
- OptimizelyDecision for the PHP SDK
- OptimizelyDecision for the Python SDK
- OptimizelyDecision for the React SDK
- OptimizelyDecision for the React Native SDK
- OptimizelyDecision for the Ruby SDK
- OptimizelyDecision for the Swift SDK
Updated 15 days ago
