- 필수 기능
- 시작하기
- Glossary
- 표준 속성
- Guides
- Agent
- 통합
- 개방형텔레메트리
- 개발자
- API
- Datadog Mobile App
- CoScreen
- Cloudcraft
- 앱 내
- 서비스 관리
- 인프라스트럭처
- 애플리케이션 성능
- APM
- Continuous Profiler
- 스팬 시각화
- 데이터 스트림 모니터링
- 데이터 작업 모니터링
- 디지털 경험
- 소프트웨어 제공
- 보안
- AI Observability
- 로그 관리
- 관리
Error Tracking processes errors collected from the Kotlin Multiplatform SDK.
Enable Kotlin Multiplatform Crash Reporting and Error Tracking to get comprehensive crash reports and error trends. With this feature, you can access:
Your crash reports appear in Error Tracking.
If you have not set up the Kotlin Multiplatform SDK yet, follow the in-app setup instructions or see the Kotlin Multiplatform setup documentation.
For any given error, you can access the file path, line number, and a code snippet for each frame of the related stack trace.
All uncaught exceptions and ANRs resulting in a crash are reported by the Kotlin Multiplatform SDK (see limitations). On top of these crashes, you can configure the SDK to report NDK crashes, and control the reporting of non-fatal ANRs.
Your Android application may be running native code (C/C++) for performance or code reusability. To enable NDK crash reporting, use the Datadog NDK library.
build.gradle.kts
file:kotlin {
sourceSets {
androidMain.dependencies {
implementation("com.datadoghq:dd-sdk-android-ndk:x.x.x")
}
}
}
// in Android source set
NdkCrashReports.enable()
An “Application Not Responding” (ANR) is an Android-specific type of error that gets triggered when the application is unresponsive for too long.
For any Android version, you can override the default setting for reporting non-fatal ANRs by setting trackNonFatalAnrs
(available from Android source set only) to true
or false
when initializing the SDK.
ANRs are only reported through RUM (not through logs). For more information, see Android Crash Reporting and Error Tracking - Add ANR Reporting.
Note: Kotlin 2.0.20 or higher is required if crash tracking is enabled on iOS. Otherwise, due to the compatibility with PLCrashReporter
, the application may hang if crash tracking is enabled. See other dependencies in the setup instructions.
All uncaught exceptions resulting in a crash are reported by the Kotlin Multiplatform SDK.
App hangs are an iOS-specific type of error that happens when the application is unresponsive for too long.
By default, app hangs reporting is disabled, but you can enable it and set your own threshold to monitor app hangs that last more than a specified duration by using the setAppHangThreshold
(available from iOS source set only) initialization method.
App hangs are only reported through RUM (not through logs). For more information, see iOS Crash Reporting and Error Tracking - Add ANR Reporting.
Mapping files are used to deobfuscate stack traces, which helps in debugging errors. Using a unique build ID that gets generated, Datadog automatically matches the correct stack traces with the corresponding mapping files. This ensures that regardless of when the mapping file was uploaded (either during pre-production or production builds), the correct information is available for efficient QA processes when reviewing crashes and errors reported in Datadog.
Use the following guides to see how you can upload mapping files (Android) or dSYMs (iOS) to Datadog: Android, iOS.
Individual debug symbols (mapping files and dSYMs) are limited to 500 MB each.
The SDK handles crash reporting with the following behaviors:
trackBackgroundEvents()
method in your RumConfiguration
builder.To verify your Kotlin Multiplatform Crash Reporting and Error Tracking configuration, you need to trigger a crash in your application and confirm that the error appears in Datadog.
To test your implementation:
Run your application on an Kotlin Multiplatform emulator or a real device.
Execute some code containing an error or crash. For example:
fun onEvent() {
throw RuntimeException("Crash the app")
}
After the crash happens, restart your application and wait for the Kotlin Multiplatform SDK to upload the crash report in Error Tracking.