iOS 에서 손수 crash reporter 구현하는데에 제약이 많은건 알고 있었지만 애플 엔지니어가 포럼에서 도시락 싸들고 다니면서까지 뜯어 말리는 줄은 몰랐다. ㅎㄷㄷ

이렇게 말리는데에는 몇 가지 이유가 있는데

  1. 크래시 시점에 시그널을 외부 프로세스로 전달할 수 없기 때문에 스택이 정리되는 상태에서 덤프까지 써야 한다.
  2. macOS 특성상 mach Exception 이 signal handling 보다 유리한데, 1의 이유로 제대로 exception 처리를 하기 곤란하고, 그래서 대부분 3rd party들은 signal handler를 등록해서 덤프를 처리한다. 필연적으로 누락되거나 제대로 처리되지 않는 경우가 발생한다.
  3. async signal safe 함수만 써서 구현해야 한다. 안그러면 동작을 보장할 수 없다.

이 외에도 크고 작은 문제들이 생각보다 많고, 암튼 그래서 3rd party iOS 크래시는 수집이 쉽지가 않다.

https://developer.apple.com/forums/thread/113742

2

❤️

1 person reacted.

😲

1 person reacted.

Hi, I'm who's behind Fedify, Hollo, BotKit, and this website, Hackers' Pub!

Fedify, Hollo, BotKit, 그리고 보고 계신 이 사이트 Hackers' Pub을 만들고 있습니다.

FedifyHolloBotKit、そしてこのサイト、Hackers' Pubを作っています。

嗨,我是 FedifyHolloBotKit 以及這個網站 Hackers' Pub 的開發者!