{"componentChunkName":"component---src-templates-documentation-tsx","path":"/crashlytics/crash-reports","result":{"data":{"mdx":{"body":"var _excluded = [\"components\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n/* @jsxRuntime classic */\n/* @jsx mdx */\n\nvar _frontmatter = {\n  \"title\": \"Crashlytics in the Firebase Console\",\n  \"description\": \"Managing the Crashlytics results in your Firebase console.\",\n  \"next\": \"/database/usage\",\n  \"previous\": \"/crashlytics/usage\"\n};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n    props = _objectWithoutProperties(_ref, _excluded);\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"h1\", {\n    \"id\": \"overview\"\n  }, \"Overview\"), mdx(\"p\", null, \"Once you have Crashlytics up and running in your app, you can navigate to Crashlytics in your Firebase Console underneath\\n'Quality' and start reviewing the reports as they come in. If this page still tells you to setup, build or run your app\\nthen you have not correctly setup Crashlytics in your app (see \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"/crashlytics/usage\"\n  }, \"Usage\"), \").\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"Keep in mind when testing out Crashlytics that Crashlytics is \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"/crashlytics/usage#enable-debug-crash-logs\"\n  }, \"disabled by default in debug mode\"), \". You may even find a more in-depth guide useful if you are really struggling with testing your crash report integration - we have \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://invertase.io/blog/react-native-firebase-crashlytics-configuration\"\n  }, \"an in-depth article about configuring and testing Crashlytics to help you.\"))), mdx(\"p\", null, \"Upon running the first two examples under \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"/crashlytics/usage\"\n  }, \"usage\"), \", you will be shown a display similar to following image.\\n\", mdx(\"img\", {\n    parentName: \"p\",\n    \"src\": \"https://i.imgur.com/YIQ88ZF.png\",\n    \"alt\": null\n  }), \"\\nIn this example the \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"/crashlytics/usage#crash-attributes\"\n  }, \"Crash Attributes\"), \" example was ran four times and the \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"/crashlytics/usage#error-reports\"\n  }, \"Error Reports\"), \" example three times, in addition to several miscellaneous exceptions that have occurred during the write-up.\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"If you are certain that your app has produced error reports, but none are visible, try restarting your app fully. Crashlytics only uploads reports upon launching the app.\")), mdx(\"h2\", {\n    \"id\": \"issues\"\n  }, \"Issues\"), mdx(\"p\", null, \"Under issues, Firebase has gathered all the reports from your app and organized them into separate issues, where each\\nissue is a unique crash or stack trace in your app. One of the issues visible in the example shown originates from \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"CrashTest.java\"), \",\\nwhich is the Android module responsible for testing Crashlytics through the \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"crash\"), \" method, throwing an uncaught exception\\nto crash the app. Using this method on the same platform will always add reports to the same issue.\"), mdx(\"h1\", {\n    \"id\": \"managing-issues\"\n  }, \"Managing issues\"), mdx(\"p\", null, \"By clicking on a specific issue, you can view its statistics and all the associated reports in more detail. In this example\\nwe're viewing the \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"CrashTest.java\"), \" issue.\"), mdx(\"p\", null, mdx(\"img\", {\n    parentName: \"p\",\n    \"src\": \"https://i.imgur.com/XYBNuJx.png\",\n    \"alt\": \"Crash Example\"\n  })), mdx(\"p\", null, \"Here you're shown the breakdown of this issue by date, device and operating system. On the bottom you can browse specific\\nreports and view their specific contents. We have selected the logs part of the report, showing the two custom log messages\\nthat our example generated. Note that there is a third \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"Crash Test\"), \" log automatically generated by Crashlytics upon using the\\n\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"crash\"), \" method. By navigating to data you can view information about the platform where the report was generated and information\\nabout the associated user. Under keys you can see the custom attributes that we have attached to the report.\"), mdx(\"h2\", {\n    \"id\": \"closing-issues\"\n  }, \"Closing issues\"), mdx(\"p\", null, \"Note that in the top right there is a button that says 'Close'. After having addressed an issue you can close it, allowing\\nyou to filter it out in the overview by selecting 'Open' under 'Issue state', when clicking on the 'Filter issues' button.\\nThis is visible in the first example, where we're displaying only 3 relevant non-fatal events out of the 12 that occurred.\\nWhen the same issue re-occurs, it will automatically open again. By clicking the arrow next to the button we can mute the\\nissue, preventing this from happening.\"), mdx(\"h1\", {\n    \"id\": \"android-anr-collection-support\"\n  }, \"Android ANR Collection Support\"), mdx(\"p\", null, \"The Firebase Team enabled the ability to collect\\nApplication Not Responding (ANR) issues that occur when the UI thread of an Android app is blocked for too long,\\nfor more information on ANR see the\\n\", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://developer.android.com/topic/performance/vitals/anr\"\n  }, \"android developer documentation\"), \".\"), mdx(\"p\", null, \"The support for ANR collection is added in the Android Crashlytics version\\n\", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://firebase.google.com/support/release-notes/android#crashlytics_v18-2-4\"\n  }, \"18.2.4\"), \"\\nso that your react native application can collect ANR, make sure you are using at least version 13.0.1 of this library\"));\n}\n;\nMDXContent.isMDXComponent = true;","frontmatter":{"title":"Crashlytics in the Firebase Console","description":"Managing the Crashlytics results in your Firebase console.","icon":null,"noindex":null},"excerpt":"Overview Once you have Crashlytics up and running in your app, you can navigate to Crashlytics in your Firebase Console underneath\n'Quality…","tableOfContents":{"items":[{"url":"#overview","title":"Overview","items":[{"url":"#issues","title":"Issues"}]},{"url":"#managing-issues","title":"Managing issues","items":[{"url":"#closing-issues","title":"Closing issues"}]},{"url":"#android-anr-collection-support","title":"Android ANR Collection Support"}]},"headings":[{"depth":1,"value":"Overview"},{"depth":2,"value":"Issues"},{"depth":1,"value":"Managing issues"},{"depth":2,"value":"Closing issues"},{"depth":1,"value":"Android ANR Collection Support"}],"parent":{"__typename":"File","relativePath":"crashlytics/crash-reports.md"}},"next":{"frontmatter":{"title":"Realtime Database"},"fields":{"slug":"/database/usage"}},"previous":{"frontmatter":{"title":"Crashlytics"},"fields":{"slug":"/crashlytics/usage"}},"sidebar":{"raw":"[[\"Getting Started\",\"/\"],[\"Migration Guide to v22\",\"/migrating-to-v22\"],[\"Migration Guide to v23\",\"/migrating-to-v23\"],[\"TypeScript\",\"/typescript\"],[\"Platforms\",\"/platforms\"],[\"Release Notes\",\"/releases\"],[\"FAQs and Tips\",\"/faqs-and-tips\"],[\"Feature Requests\",\"https://invertase.canny.io/react-native-firebase\"],[\"Contributing\",\"https://github.com/invertase/react-native-firebase/blob/main/CONTRIBUTING.md\"],[\"AI Logic\",[[\"Usage\",\"/ai/usage\"]],\"//firebase.google.com/static/images/icons/firebase-ai-logic.svg\"],[\"Analytics\",[[\"Usage\",\"/analytics/usage\"],[\"Screen Tracking\",\"/analytics/screen-tracking\"],[\"Building an Analytics Funnel\",\"https://blog.theodo.com/2018/01/building-google-analytics-funnel-firebase-react-native\"]],\"//firebase.google.com/static/images/products/icons/run_analytics.svg\"],[\"App Check\",[[\"Usage\",\"/app-check/usage\"]],\"//firebase.google.com/static/images/products/icons/build_app_check.svg\"],[\"App Distribution\",[[\"Usage\",\"/app-distribution/usage\"]],\"//firebase.google.com/static/images/products/icons/run_app_distribution.svg\"],[\"Authentication\",[[\"Usage\",\"/auth/usage\"],[\"Social Auth\",\"/auth/social-auth\"],[\"Phone Auth\",\"/auth/phone-auth\"],[\"OpenID Connect Auth\",\"/auth/oidc-auth\"],[\"Multi-factor Auth\",\"/auth/multi-factor-auth\"]],\"//firebase.google.com/static/images/products/icons/build_auth.svg\"],[\"Cloud Firestore\",[[\"Usage\",\"/firestore/usage\"],[\"Usage with Emulator\",\"/firestore/emulator\"],[\"Usage with FlatLists\",\"/firestore/usage-with-flatlists\"],[\"Implementing Pagination\",\"/firestore/pagination\"],[\"Building a \\\"TODO\\\" app\",\"https://invertase.io/blog/getting-started-with-cloud-firestore-on-react-native\"]],\"//firebase.google.com/static/images/products/icons/build_firestore.svg\"],[\"Cloud Functions\",[[\"Usage\",\"/functions/usage\"],[\"Writing & Deploying Functions\",\"/functions/writing-deploying-functions\"]],\"//firebase.google.com/static/images/products/icons/build_functions.svg\"],[\"Cloud Messaging\",[[\"Usage\",\"/messaging/usage\"],[\"iOS Project Setup\",\"/messaging/usage/ios-setup\"],[\"iOS Permissions\",\"/messaging/ios-permissions\"],[\"Notifications\",\"/messaging/notifications\"],[\"iOS Notification Images\",\"/messaging/ios-notification-images\"],[\"Server Integration\",\"/messaging/server-integration\"]],\"//firebase.google.com/static/images/products/icons/run_cloud_messaging.svg\"],[\"Cloud Storage\",[[\"Usage\",\"/storage/usage\"]],\"//firebase.google.com/static/images/products/icons/build_storage.svg\"],[\"Core / App\",[[\"Usage\",\"/app/usage\"],[\"JSON Config\",\"/app/json-config\"],[\"Utils\",\"/app/utils\"]],\"//static.invertase.io/assets/social/firebase-logo.png\"],[\"Crashlytics\",[[\"Usage\",\"/crashlytics/usage\"],[\"Viewing crash reports\",\"/crashlytics/crash-reports\"]],\"//firebase.google.com/static/images/products/icons/run_crashlytics.svg\"],[\"Realtime Database\",[[\"Usage\",\"/database/usage\"],[\"Offline Support\",\"/database/offline-support\"],[\"Presence Detection\",\"/database/presence-detection\"]],\"//firebase.google.com/static/images/products/icons/build_realtime_database.svg\"],[\"In-App Messaging\",[[\"Usage\",\"/in-app-messaging/usage\"]],\"//firebase.google.com/static/images/products/icons/run_in_app_messaging.svg\"],[\"Installations\",[[\"Usage\",\"/installations/usage\"]],\"//static.invertase.io/assets/social/firebase-logo.png\"],[\"ML\",[[\"Usage\",\"/ml/usage\"]],\"//firebase.google.com/static/images/products/icons/build_ml.svg\"],[\"Remote Config\",[[\"Usage\",\"/remote-config/usage\"]],\"//firebase.google.com/static/images/products/icons/run_remote_config.svg\"],[\"Performance Monitoring\",[[\"Usage\",\"/perf/usage\"],[\"Axios Integration\",\"/perf/axios-integration\"],[\"KY Integration\",\"/perf/ky-integration\"]],\"//firebase.google.com/static/images/products/icons/run_performance.svg\"],[\"VertexAi\",[[\"Usage\",\"/vertexai/usage\"]],\"//static.invertase.io/assets/social/firebase-logo.png\"],[\"Legacy docs\",[[\"Migrating to v6\",\"/migrating-to-v6\"],[\"Legacy Docs (<= v5)\",\"https://v5.rnfirebase.io/docs/v5.x.x/getting-started\"]],\"//static.invertase.io/assets/social/firebase-logo.png\"]]"}},"pageContext":{"id":"9f81d27d-c69d-5e72-8dc5-a3d58aebbbbb","next":"/database/usage","previous":"/crashlytics/usage"}},"staticQueryHashes":["3688227230"]}