EmbraceConfig
@interface EmbraceConfig : NSObject
The Embrace sdk configurations. This is used to setup configurations.
-
Returns the default config. The first time this is called it synchronously reads Embrace-Info.plist from disk. Returns nil if a valid plist file is not find at default path.
Declaration
Objective-C
- (nullable instancetype)initWithDefaultConfig;
Swift
init?(defaultConfig: ())
-
Initializes a customized instance of EmbraceConfig from the file at the given plist file path. This will read the file synchronously from disk.
Declaration
Objective-C
- (nullable instancetype)initWithContentsOfFile:(nonnull NSString *)path;
Swift
init?(contentsOfFile path: String)
Parameters
path
Embrace info property list file path.
Return Value
nil if a valid plist file is not find at path.
-
Initializes a customized instance of EmbraceConfig with required fields.
Declaration
Objective-C
- (nullable instancetype)initWithAPIKey:(nonnull NSString *)apiKey;
Swift
init?(apiKey: String)
Parameters
apiKey
The unique Embrace API key that identifies your application.
Return Value
nil if an invalid app ID is specified.
-
The Embrace app ID. This is used to identify the app within the database.
Note
Plist detail- Key: API_KEY
- Type: String
- Defult: N/A
Declaration
Objective-C
@property (strong, readonly, nonnull) NSString *APIKey;
Swift
var apiKey: String { get }
-
Data base URL.
Note
Plist detail- Key: DATA_BASE_URL
- Type: String
- Defult: data.emb-api.com
Declaration
Objective-C
@property (strong, readonly, nullable) NSString *baseURL;
Swift
var baseURL: String? { get }
-
Data dev base URL.
Note
Plist detail- Key: DATA_DEV_BASE_URL
- Type: String
- Defult: data-dev.emb-api.com
Declaration
Objective-C
@property (strong, readonly, nullable) NSString *devBaseURL;
Swift
var devBaseURL: String? { get }
-
Config base URL
Note
Plist detail- Key: CONFIG_BASE_URL
- Type: String
- Defult: config.emb-api.com
Declaration
Objective-C
@property (strong, readonly, nullable) NSString *configBaseURL;
Swift
var configBaseURL: String? { get }
-
Images base URL.
Note
Plist detail- Key: IMAGES_BASE_URL
- Type: String
- Defult: images.emb-api.com
Declaration
Objective-C
@property (strong, readonly, nullable) NSString *imagesBaseURL;
Swift
var imagesBaseURL: String? { get }
-
URLSessionDelegate proxying filters, if a string from this filter is found, Embrace will not proxy that URLSession’s delegate Tasks associated with the session are still proxied.
Note
Plist detail- Key: URLSESSION_CAPTURE_FILTERS
- Type: Array
- Defult: nil
Declaration
Objective-C
@property (strong, readonly, nullable) NSArray<NSString *> *urlSessionCaptureFilters;
Swift
var urlSessionCaptureFilters: [String]? { get }
-
Control whether the Embrace SDK automatically attaches to the uncaught exception handler.
Note
Plist detail- Key: CRASH_REPORT_ENABLED
- Type: Boolean
- Defult: false
Declaration
Objective-C
@property (strong, readonly, nullable) NSNumber *crashReportEnabled;
Swift
var crashReportEnabled: NSNumber? { get }
-
Control whether the startup moment is automatically ended.
Note
Plist detail- Key: STARTUP_AUTOEND_SECONDS
- Type: Number
- Defult: nil
Declaration
Objective-C
@property (strong, readonly, nullable) NSNumber *startupAutoendSeconds;
Swift
var startupAutoendSeconds: NSNumber? { get }
-
Control whether startup moment screenshots are taken.
Note
Plist detail- Key: STARTUP_MOMENT_SCREENSHOT_ENABLED
- Type: Boolean
- Defult: true
Declaration
Objective-C
@property (readonly) BOOL startupScreenshotEnabled;
Swift
var startupScreenshotEnabled: Bool { get }
-
The Trace ID Header that can be used to trace a particular request.
Note
Plist detail- Key: TRACE_ID_HEADER_NAME
- Type: String
- Defult: x-emb-trace-id
Declaration
Objective-C
@property (strong, readonly, nullable) NSString *traceIdHeader;
Swift
var traceIdHeader: String? { get }
-
The default capture limit for the specified domains.
Note
Plist detail- Key: DEFAULT_CAPTURE_LIMIT
- Type: Number
- Defult: nil
Declaration
Objective-C
@property (strong, readonly, nullable) NSNumber *networkCaptureLimit;
Swift
var networkCaptureLimit: NSNumber? { get }
-
List of domains to be limited for tracking.
Note
Plist detail- Key: DOMAINS
- Type: Dictionary
- Defult: nil
Declaration
Objective-C
@property (strong, readonly, nullable) NSDictionary<NSString *, NSNumber *> *networkCaptureDomains;
Swift
var networkCaptureDomains: [String : NSNumber]? { get }
-
URLs that should not be captured.
Note
Plist detail- Key: DISABLED_URL_PATTERNS
- Type: Array
- Defult: nil
Declaration
Objective-C
@property (strong, readonly, nullable) NSArray *disabledUrlPatterns;
Swift
var disabledUrlPatterns: [Any]? { get }
-
Control whether network request metrics is captured.
Note
Plist detail- Key: COLLECT_NETWORK_REQUEST_METRICS
- Type: Boolean
- Defult: true
Declaration
Objective-C
@property (readonly) BOOL collectNetworkRequestMetrics;
Swift
var collectNetworkRequestMetrics: Bool { get }
-
Control whether NSURLConnection proxy is enabled.
Note
Plist detail- Key: NSURLCONNECTION_PROXY_ENABLE
- Type: Boolean
- Defult: true
Declaration
Objective-C
@property (readonly) BOOL nsurlconnectionProxyEnable;
Swift
var nsurlconnectionProxyEnable: Bool { get }
-
Control whether background fetch information is captured.
Note
Plist detail- Key: BACKGROUND_FETCH_CAPTURE_ENABLE
- Type: Boolean
- Defult: false
Declaration
Objective-C
@property (readonly) BOOL backgroundFetchCaptureEnable;
Swift
var backgroundFetchCaptureEnable: Bool { get }
-
Public RSA key to encrypt and store the network capture payload as a base64 string.
Inlcude your public RSA key here, network body capture will be fully encrypted and only you can decrypt it using your private key.
Note
Plist detail- Key: CAPTURE_PUBLIC_KEY
- Type: String
- Defult: nil
Declaration
Objective-C
@property (strong, readonly, nullable) NSString *networkCapturePublicKey;
Swift
var networkCapturePublicKey: String? { get }
-
Specify a maximum time before a session is allowed to exist before it is ended.
Note
Plist detail- Key: MAX_SESSION_SECONDS
- Type: Number
- Defult: nil
Declaration
Objective-C
@property (strong, readonly, nullable) NSNumber *maxSessionSeconds;
Swift
var maxSessionSeconds: NSNumber? { get }
-
Control whether webview query parameters are captured.
Note
Plist detail- Key: WEBVIEW_STRIP_QUERYPARAMS
- Type: Boolean
- Defult: false
Declaration
Objective-C
@property (readonly) BOOL webviewStripQueryparams;
Swift
var webviewStripQueryparams: Bool { get }
-
Control whether webview information is captured.
Note
Plist detail- Key: WEBVIEW_ENABLE
- Type: Boolean
- Defult: true
Declaration
Objective-C
@property (readonly) BOOL webviewEnable;
Swift
var webviewEnable: Bool { get }
-
Embrace will always report on WKWebView content thread terminations when they happen.
Optionally, you can enable this setting to have Embrace call Reload on the WKWebView for you. Note: If your application uses third party WKWebView content, such as advertising SDKS, it is recommended to leave this setting off
Note
Plist detail- Key: ENABLE_WK_AUTO_RELOAD
- Type: Boolean
- Defult: false
Declaration
Objective-C
@property (readonly) BOOL wttAutoReloadEnabled;
Swift
var wttAutoReloadEnabled: Bool { get }
-
Control whether tap coordinates are captured.
Note
Plist detail- Key: CAPTURE_COORDINATES
- Type: Boolean
- Defult: true
Declaration
Objective-C
@property (readonly) BOOL captureCoordinatesEnabled;
Swift
var captureCoordinatesEnabled: Bool { get }
-
Control whether automatic view capture is enabled, disable this if you are using custom view API.
Note
Plist detail- Key: ENABLE_AUTOMATIC_VIEW_CAPTURE
- Type: Boolean
- Defult: true
Declaration
Objective-C
@property (readonly) BOOL automaticViewCaptureEnabled;
Swift
var automaticViewCaptureEnabled: Bool { get }
-
Embrace can use the os_log stream to help categorize crash reports or find non-fatal exceptions such as CollectionView or Autolayout runtime issues.
By default this feature is off as the os_log stream can contain sensitive information. Enable this feature if you comfortable with sharing your os_log data with Embrace.
Note
Plist detail- Key: ENABLE_OS_LOG
- Type: Boolean
- Defult: true
Declaration
Objective-C
@property (readonly) BOOL oslogTrackingEnabled;
Swift
var oslogTrackingEnabled: Bool { get }