What problem does it solve?
It helps you turn low-level Android crash tombstones into readable .NET runtime backtraces with function names, source files, and line numbers, so you can triage MAUI/Xamarin/Mono crashes much faster.
Core Features & Use Cases
- .NET-native frame identification: Detects frames belonging to .NET runtime libraries such as libmonosgen-2.0.so and libcoreclr.so (and common .NET native BCL libraries).
- BuildId-based symbol resolution: Extracts ELF BuildIds and uses the Microsoft symbol server to download matching debug symbols, then runs llvm-symbolizer to resolve PC offsets.
- CI-friendly automation for debugging: Automates the full parse → download → symbolication workflow via a single PowerShell script, including a ParseOnly mode for planning/triage.
- Use Case: When a .NET MAUI app crashes on Android with SIGABRT/SIGSEGV and your log shows a native tombstone, run this skill to map the native frames back to .NET runtime code locations (e.g., mono/metadata/icall.c with a specific line), instead of manually guessing.
Quick Start
Run Symbolicate-Tombstone.ps1 on your tombstone file and produce a symbolicated backtrace: pwsh scripts/Symbolicate-Tombstone.ps1 -TombstoneFile tombstone_01.txt -LlvmSymbolizer llvm-symbolizer -OutputFile symbolicated.txt