CrashMonitor is a Swift package that provides powerful crash reporting functionality for Apple platforms. Built on top of KSCrash, it offers a simple and modern Swift API for crash reporting and analysis in your applications.
- 🔍 Comprehensive crash reporting
- 💫 Support for multiple crash types (Mach exceptions, signals, C++ exceptions, NSExceptions)
- 📱 Cross-platform support (iOS, macOS, tvOS, watchOS)
- 🔄 Async/await API support
- 📊 Customizable report formatting
- 💾 Flexible storage options
- Swift 5.9+
- iOS 13.0+
- macOS 10.15+
- tvOS 13.0+
- watchOS 6.0+
Add CrashMonitor to your project through Xcode's Swift Package Manager:
- File > Add Packages...
- Enter the package URL:
https://github.com/codingiran/CrashMonitor.git
- Select "Up to Next Major Version" with "0.0.1"
Or add it to your Package.swift
file:
dependencies: [
.package(url: "https://github.com/codingiran/CrashMonitor.git", from: "0.0.1")
]
import CrashMonitorCore
import CrashMonitorInstall
do {
try CrashMonitor.install()
} catch {
print("CrashMonitor install failed: \(error)")
}
import CrashMonitorCore
import CrashMonitorReport
Task {
do {
let reports = try await CrashMonitor.allReports()
} catch {
print("CrashMonitor get all reports failed: \(error)")
}
}
CrashMonitor is available under the MIT license. See the LICENSE file for details.
Contributions are welcome! Please feel free to submit a Pull Request.