アプリケーションのエラー設計で、アプリ側のクラッシュは極力避ける方針でコードを実装する場合があります。それでも開発中はクラッシュさせたい場合にassertなどを使うことがあると思います。本番環境でユーザーがアプリを触る時にエラーを踏んで操作は継続するもののエラーを踏んで回避したいことを知りたい場合にCrashlyticsのnon-fatalが便利です。 Swiftのエラー分類 SwiftにはErrorHandlingRationale.rstというエラーハンドリングに関するドキュメントがあります。そこでは、Simple domain errors、Recoverbable errors、Universal errors、Logic failuresという四つのエラー分類があります。 このタイプのエラーはこれらのどれに分類される、といったような分類の仕方ではなく、どのようにエラーを扱いたいか
![[iOS]Firebase Crashlyticsを使って致命的でないとして回避したイベントを記録する | DevelopersIO](https://cdn-ak-scissors.b.st-hatena.com/image/square/bf1fba053b10ac0f0ec1e4798fc6d0cc36462bba/height=288;version=1;width=512/https%3A%2F%2Fdevio2023-media.developers.io%2Fwp-content%2Fuploads%2F2019%2F04%2Ffirebase-eyecatch.png)