Cách khắc phục sự cố và câu hỏi thường gặp về Crashlytics
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Trang này cung cấp thông tin trợ giúp khắc phục sự cố và câu trả lời cho các câu hỏi thường gặp về việc sử dụng Crashlytics. Nếu bạn không tìm thấy thứ mình cần hoặc cần được trợ giúp thêm, hãy liên hệ với nhóm hỗ trợ của Firebase.
Khắc phục vấn đề chung/Câu hỏi thường gặp
Xem nhiều định dạng (và đôi khi là "biến thể") cho một số vấn đề trong bảng Vấn đề
Bạn có thể nhận thấy hai định dạng khác nhau cho các vấn đề được liệt kê trong bảng Vấn đề trong bảng điều khiển của Firebase. Ngoài ra, bạn cũng có thể thấy một tính năng có tên là "variants" (biến thể) trong một số vấn đề của mình. Dưới đây là lý do!
Vào đầu năm 2023, chúng tôi đã ra mắt một công cụ phân tích cải tiến để nhóm các sự kiện cũng như thiết kế mới cập nhật và một số tính năng nâng cao cho các vấn đề mới (như các biến thể!). Hãy xem
bài đăng trên blog
gần đây của chúng tôi để biết thêm thông tin chi tiết, nhưng bạn có thể đọc thêm thông tin nổi bật bên dưới.
Crashlytics phân tích tất cả sự kiện trong ứng dụng của bạn (như sự cố, sự cố không nghiêm trọng và lỗi ANR) và tạo các nhóm sự kiện được gọi là vấn đề – tất cả các sự kiện trong một vấn đề đều có một điểm lỗi chung.
Để nhóm các sự kiện vào những vấn đề này, công cụ phân tích cải tiến hiện sẽ xem xét
nhiều khía cạnh của sự kiện, bao gồm các khung trong dấu vết ngăn xếp,
thông báo ngoại lệ, mã lỗi và các đặc điểm khác của nền tảng hoặc loại lỗi.
Tuy nhiên, trong nhóm sự kiện này, dấu vết ngăn xếp dẫn đến lỗi có thể khác nhau. Một dấu vết ngăn xếp khác có thể là một nguyên nhân gốc khác.
Để thể hiện sự khác biệt có thể xảy ra này trong một vấn đề, giờ đây chúng tôi tạo biến thể trong các vấn đề – mỗi biến thể là một nhóm con các sự kiện trong một vấn đề có cùng điểm lỗi và dấu vết ngăn xếp tương tự. Với các biến thể, bạn có thể gỡ lỗi các dấu vết ngăn xếp phổ biến nhất trong một vấn đề và xác định xem có nhiều nguyên nhân gốc gây ra lỗi này hay không.
Sau đây là những trải nghiệm của bạn với những điểm cải tiến này:
Siêu dữ liệu được cải tiến và xuất hiện trong hàng vấn đề Giờ đây, bạn có thể dễ dàng hiểu và phân loại các vấn đề trong ứng dụng.
Ít vấn đề trùng lặp hơn Việc thay đổi số dòng không dẫn đến vấn đề mới.
Gỡ lỗi dễ dàng hơn cho các vấn đề phức tạp với nhiều nguyên nhân gốc Sử dụng các biến thể để gỡ lỗi các dấu vết ngăn xếp phổ biến nhất trong một vấn đề.
Các cảnh báo và tín hiệu có ý nghĩa hơn Một vấn đề mới thực ra là một lỗi mới.
Khả năng tìm kiếm hiệu quả hơn Mỗi vấn đề đều chứa siêu dữ liệu dễ tìm kiếm hơn, chẳng hạn như loại ngoại lệ và tên gói.
Dưới đây là cách thức triển khai những cải tiến này:
Khi nhận được các sự kiện mới từ ứng dụng của bạn, chúng tôi sẽ kiểm tra xem các sự kiện đó có khớp với vấn đề hiện tại hay không.
Nếu không có kết quả trùng khớp, chúng tôi sẽ tự động áp dụng thuật toán nhóm sự kiện thông minh hơn cho sự kiện và báo cáo vấn đề mới với thiết kế siêu dữ liệu được cải tiến.
Đây là lần cập nhật quan trọng đầu tiên mà chúng tôi thực hiện đối với nhóm sự kiện. Nếu bạn có ý kiến phản hồi hoặc gặp bất kỳ vấn đề nào, vui lòng cho chúng tôi biết bằng cách
gửi báo cáo.
Không thấy
các chỉ số và/hoặc cảnh báo về tốc độ không có sự cố
Nếu bạn không thấy những chỉ số không gặp sự cố (như phiên và/hoặc người dùng không gặp sự cố)
và/hoặc cảnh báo tốc độ, hãy đảm bảo rằng bạn đang sử dụng
Không thấy nhật ký breadcrumb (tập hợp liên kết phân cấp)
Nếu không thấy nhật ký đường dẫn, bạn nên kiểm tra cấu hình của ứng dụng cho Google Analytics.
Đảm bảo rằng bạn đáp ứng các yêu cầu sau:
Bạn đã
vào ứng dụng của bạn. Bạn phải thêm SDK này bổ sung vào Crashlytics SDK.
Bạn đang sử dụng
cho tất cả các sản phẩm mà bạn sử dụng trong ứng dụng.
Ai có thể xem, viết và xoá ghi chú về một vấn đề?
Ghi chú cho phép các thành viên dự án nhận xét về các vấn đề cụ thể kèm theo câu hỏi, thông tin cập nhật trạng thái, v.v.
Khi một thành viên trong dự án đăng một ghi chú, ghi chú đó sẽ được gắn nhãn bằng email của Tài khoản Google của họ. Tất cả thành viên dự án có quyền truy cập để xem ghi chú đều có thể thấy địa chỉ email này cùng với ghi chú.
Sau đây là quyền truy cập cần thiết để xem, ghi và xoá ghi chú:
Thành viên dự án có bất kỳ vai trò nào sau đây đều có thể xem và xoá các ghi chú hiện có cũng như viết ghi chú mới về một vấn đề.
Ghi chú cho phép các thành viên dự án nhận xét về các vấn đề cụ thể kèm theo câu hỏi, thông tin cập nhật trạng thái, v.v.
Khi một thành viên trong dự án đăng một ghi chú, ghi chú đó sẽ được gắn nhãn bằng email của Tài khoản Google của họ. Tất cả thành viên dự án có quyền truy cập để xem ghi chú đều có thể thấy địa chỉ email này cùng với ghi chú.
Sau đây là quyền truy cập cần thiết để xem, ghi và xoá ghi chú:
Thành viên dự án có bất kỳ vai trò nào sau đây đều có thể xem và xoá các ghi chú hiện có cũng như viết ghi chú mới về một vấn đề.
Ứng dụng cũng sử dụng
SDK Quảng cáo của Google trên thiết bị di động nhưng không gặp sự cố
Nếu dự án của bạn sử dụng Crashlytics cùng với SDK Quảng cáo của Google trên thiết bị di động,
thì có khả năng trình báo cáo sự cố sẽ gây trở ngại cho quá trình đăng ký trình xử lý ngoại lệ. Để khắc phục vấn đề này, hãy tắt tính năng báo cáo sự cố trong
SDK quảng cáo trên thiết bị di động bằng cách gọi disableSDKCrashReporting.
Tập dữ liệu BigQuery của tôi nằm ở đâu?
Sau khi bạn liên kết Crashlytics với BigQuery, các tập dữ liệu mới mà bạn tạo sẽ tự động được đặt tại Hoa Kỳ, bất kể vị trí của dự án Firebase của bạn.
Hỗ trợ nền tảng
Vấn đề hồi quy
Vấn đề hồi quy là gì?
Một vấn đề đã hồi quy khi bạn đã đóng vấn đề trước đó nhưng
Crashlytics nhận được một báo cáo mới cho biết vấn đề này tái diễn.
Crashlytics tự động mở lại các vấn đề đã hồi quy này để bạn có thể giải quyết chúng sao cho phù hợp với ứng dụng của mình.
Dưới đây là một trường hợp ví dụ giải thích cách Crashlytics phân loại một vấn đề là hồi quy:
Đây là lần đầu tiên Crashlytics nhận được báo cáo sự cố về Sự cố "A". Crashlytics mở ra một vấn đề tương ứng với sự cố đó (Vấn đề "A").
Bạn sẽ nhanh chóng khắc phục lỗi này, đóng Vấn đề "A", sau đó phát hành một phiên bản mới của ứng dụng.
Crashlytics nhận một báo cáo khác về Vấn đề "A" sau khi bạn đã đóng vấn đề.
Nếu báo cáo là từ một phiên bản ứng dụng mà Crashlytics biết về
khi bạn đóng vấn đề (nghĩa là phiên bản đó đã gửi
một báo cáo sự cố cho bất kỳ sự cố nào), thì Crashlytics sẽ không coi vấn đề này là đã hồi quy. Vấn đề sẽ vẫn bị đóng.
Nếu báo cáo này đến từ một phiên bản ứng dụng mà Crashlytics không biết về thời điểm bạn đóng vấn đề (tức là phiên bản đó chưa bao giờ gửi bất kỳ báo cáo sự cố nào cho mọi sự cố), thì Crashlytics sẽ xem xét vấn đề đã hồi quy và sẽ mở lại vấn đề.
Khi một vấn đề hồi quy, chúng tôi sẽ gửi cảnh báo phát hiện hồi quy và thêm tín hiệu hồi quy vào vấn đề đó để cho bạn biết rằng Crashlytics đã mở lại vấn đề. Nếu bạn không muốn một vấn đề mở lại do thuật toán hồi quy của chúng tôi, hãy "tắt tiếng" thay vì đóng vấn đề đó.
Tại sao tôi thấy các vấn đề hồi quy đối với các phiên bản ứng dụng cũ?
Nếu một báo cáo là từ một phiên bản ứng dụng cũ chưa từng gửi báo cáo sự cố nào khi bạn đóng vấn đề, thì Crashlytics sẽ xem xét vấn đề đã hồi quy và sẽ mở lại vấn đề đó.
Tình huống này có thể xảy ra trong trường hợp sau: Bạn đã khắc phục lỗi và phát hành một phiên bản mới của ứng dụng, nhưng vẫn còn người dùng đang sử dụng các phiên bản cũ hơn mà chưa có bản sửa lỗi đó. Nếu tình cờ một trong những phiên bản cũ đó chưa bao giờ gửi bất kỳ báo cáo sự cố nào khi bạn đóng vấn đề và những người dùng đó bắt đầu gặp lỗi, thì những báo cáo sự cố đó sẽ kích hoạt một vấn đề hồi quy.
Nếu bạn không muốn vấn đề mở lại do thuật toán hồi quy của chúng tôi, hãy "ẩn" thay vì đóng vấn đề.