UNPKG

@datadog/mobile-react-native

Version:

A client-side React Native module to interact with Datadog

259 lines (258 loc) 11.4 kB
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://github.com/DataDog/dd-sdk-reactnative/blob/develop/datadog-configuration.schema.json", "title": "Datadog React Native SDK Configuration", "description": "Configuration for initializing the Datadog React Native SDK from the native layers.", "type": "object", "properties": { "configuration": { "description": "Configuration used for initializing the Datadog SDK.", "type": "object", "properties": { "clientToken": { "description": "A valid Datadog client token.", "type": "string" }, "env": { "description": "The application’s environment, for example: prod, pre-prod, staging, etc.", "type": "string" }, "applicationId": { "description": "The RUM application ID.", "type": "string" }, "nativeCrashReportEnabled": { "description": "Enables crash reporting for native platforms (iOS, Android). Default `false`.", "type": "boolean" }, "nativeLongTaskThresholdMs": { "description": "The threshold for native long tasks reporting in milliseconds.", "type": "integer" }, "longTaskThresholdMs": { "description": "The threshold for javascript long tasks reporting in milliseconds.", "type": "integer" }, "sessionSamplingRate": { "description": "Percentage of sampled RUM sessions. Range `0`-`100`.", "type": "integer" }, "site": { "description": "The Datadog site of your organization (can be 'US1', 'US1_FED', 'US3', 'US5', 'AP1', 'AP2', or 'EU1', default is 'US1').", "type": "string", "enum": [ "US1", "US1_FED", "US3", "US5", "EU1", "AP1", "AP2" ] }, "trackingConsent": { "description": "Consent, which can take one of the following values: 'PENDING', 'GRANTED', 'NOT_GRANTED'.", "type": "string", "enum": [ "PENDING", "GRANTED", "NOT_GRANTED" ] }, "telemetrySampleRate": { "description": "The sampling rate for Internal Telemetry (info related to the work of the SDK internals). Range `0`-`100`.", "type": "integer" }, "vitalsUpdateFrequency": { "description": "Sets the preferred frequency for collecting mobile vitals.", "type": "string", "enum": [ "NEVER", "RARE", "AVERAGE", "FREQUENT" ] }, "uploadFrequency": { "description": "Sets the preferred frequency for uploading batches of data.", "type": "string", "enum": [ "RARE", "AVERAGE", "FREQUENT" ] }, "batchSize": { "description": "Defines the Datadog SDK policy when batching data together before uploading it to Datadog servers.", "type": "string", "enum": [ "SMALL", "MEDIUM", "LARGE" ] }, "trackFrustrations": { "description": "Enables tracking of frustration signals (error taps). Defaults to `true`.", "type": "boolean" }, "trackBackgroundEvents": { "description": "Enables tracking of RUM event when no RUM View is active.", "type": "boolean" }, "customEndpoints": { "type": "object", "description": "Target a custom server for RUM, Logs and Traces features.", "properties": { "rum": { "type": "string" }, "logs": { "type": "string" }, "trace": { "type": "string" } } }, "nativeViewTracking": { "description": "Enables native views tracking.", "type": "boolean" }, "nativeInteractionTracking": { "description": "Enables native interaction tracking.", "type": "boolean" }, "verbosity": { "description": "Verbosity for internal SDK logging.", "type": "string", "enum": [ "DEBUG", "INFO", "WARN", "ERROR" ] }, "proxy": { "type": "object", "description": "Configuration for proxying SDK data.", "properties": { "type": { "description": "Proxy type.", "type": "string", "enum": [ "HTTP", "HTTPS", "SOCKS" ] }, "address": { "description": "Proxy address. Can be either in the IP address format, ex. '1.1.1.1', or hostname, ex. 'example.com'.", "type": "string" }, "port": { "description": "Proxy port.", "type": "integer" }, "username": { "description": "Username for Basic authentication scheme. Note: SOCKS + authentication scheme is not supported.", "type": "string" }, "password": { "description": "Password for Basic authentication scheme.", "type": "string" } }, "required": [ "type", "port", "address" ] }, "serviceName": { "description": "Custom service name.", "type": "string" }, "version": { "description": "Overrides the reported version of the app.", "type": "string" }, "firstPartyHosts": { "description": "List of your backends hosts to enable tracing with.", "type": "array", "items": { "type": "object", "properties": { "match": { "description": "Matches domains and subdomains, e.g. `['example.com']` matches `example.com` and `api.example.com`. Regular expressions are NOT supported.", "type": "string" }, "propagatorTypes": { "description": "Types of instrumentation on the host.", "type": "array", "items": { "description": "Type of instrumentation on the host.", "type": "string", "enum": [ "DATADOG", "B3", "B3MULTI", "TRACECONTEXT" ] } } } } }, "trackInteractions": { "description": "Track React Native components interactions.", "type": "boolean" }, "trackResources": { "description": "Track React Native resources.", "type": "boolean" }, "trackErrors": { "description": "Track React Native errors.", "type": "boolean" }, "actionNameAttribute": { "description": "Specifies a custom prop to name RUM actions on elements having an `onPress` prop.", "type": "string" }, "useAccessibilityLabel": { "description": "Determines whether the accessibility labels can be used to name RUM actions (default is true)", "type": "boolean" }, "resourceTracingSamplingRate": { "description": "Percentage of tracing integrations for network calls between your app and your backend. Range `0`-`100`.", "type": "number" }, "bundleLogsWithRum": { "description": "Enables RUM correlation with logs.", "type": "boolean" }, "bundleLogsWithTraces": { "description": "Enables Traces correlation with logs.", "type": "boolean" }, "appHangThreshold": { "description": "The app hang threshold in seconds for non-fatal app hangs on iOS.", "type": "number" }, "trackNonFatalAnrs": { "description": "Enables tracking of non-fatal ANRs on Android.", "type": "boolean" }, "initialResourceThreshold": { "description": "The amount of time after a view starts where a Resource should be considered when calculating Time to Network-Settled (TNS)", "type": "number" } }, "required": [ "clientToken", "env", "applicationId" ] } } }