Comments (10)
I contacted Crashlytics support and they stated:
Our limit is around 64kb or 128kb in some cases. It looks like ANRwatchdog is producing reports over 500kb
So looks like currently you must use the setReportMainThreadOnly() option as it limits the size of the report.
from anr-watchdog.
I have been looking into this, and I was able to get this to work by setting the ANRWatchDog to only report the main thread.
anrWatchDog.setReportMainThreadOnly()
I still cannot get this to work without that setting.
from anr-watchdog.
Hi,
We`ve come across exactly the same problem. onAppNotResponding callback is raised, but the issue on crashlytics never created. Any thoughts or updates on this?
from anr-watchdog.
I too was having this issue earlier, it seems when you Log a non-runtime exception in crashlytics it creates nonfatal exceptions in fabric dashboard since ANRs don't necessarily crash an application. You need to toggle the switch in the fabric dashboard to show all exceptions including non-fatals as by default it only shows fatal exceptions.
Another issue might be proguard which when enabled strips some important classes required by anrWatchDog. To prevent that use the following rule in your proguard-rules.pro file.
-keep class com.github.anrwatchdog.** { *; }
You might also want to do the following to change the error into string
anrWatchDog.setANRListener(new ANRWatchDog.ANRListener() {
@Override
public void onAppNotResponding(ANRError error) {
StringWriter sw = new StringWriter();
error.printStackTrace(new PrintWriter(sw));
CrashUtil.logException(new RuntimeException(sw.toString()));
}
});
Hope it helps!
from anr-watchdog.
@navaneet Regarding the dashboard thing, I have already selected "All Events".
Will surely look into the 2nd part of your solution though. Thanks!
Btw Fabric team replied that they are receiving an empty report and hence it is not showing in the dashboard. Any thoughts?
from anr-watchdog.
Not sure, however if it logs into logcat it should log into fabric too. Try logging to logcat and then check against fabric if the same error is getting logged.
from anr-watchdog.
I dont think that proguard is the case because we
ve got the same situation for our debug builds (which arent minimized). But I
ll give it a try.
I also tried it with some dummy exception and it works fine. So the problem is definitely with ANRError class
from anr-watchdog.
@mflesh1 I think issue is because of ANR format. Crashlytics is expecting an exception which normally contains a message and a stack trace. When "setReportMainThreadOnly" is disabled, ANRError creates a nested stack trace of all threads which Crashlytics does not accept. If I convert the ANRError into a string, as suggested by @navaneet , then it get posted fine. But then there is error grouping issue on crashlytics dashboard which I am currently trying to figure out. .
from anr-watchdog.
ANRError indeed is too big for Crashlytics. I convert errors into text files and upload to Firebase storage it is free and you can setup it from Android Studio.
from anr-watchdog.
The documentation warns about this.
That's all I can do 😞
from anr-watchdog.
Related Issues (20)
- Debug.waitForDebugger() conflict HOT 1
- Few queries - Not exactly issue HOT 1
- How can I get pid of Thread from ANRErro? HOT 1
- Anr is not being detected for android 8.0 HOT 1
- Real ANR timeout HOT 2
- Ggv
- Mm
- I too was having this issue earlier, it seems when you Log a non-runtime exception in crashlytics it creates nonfatal exceptions in fabric dashboard since ANRs don't necessarily crash an application. You need to toggle the switch in the fabric dashboard to show all exceptions including non-fatals as by default it only shows fatal exceptions.
- ANRError indeed is too big for Crashlytics. I convert errors into text files and upload to Firebase storage it is free and you can setup it from Android Studio.
- The fix is released in version `1.4.0`.
- Cannot download version 1.4.0 HOT 2
- 10786c7b4e6270fb3a65a89082a6581e8250e1f6
- It seems not so good to start the anr-watchdog on application oncreate
- Main thread is in runnable state but still ANR is detected. HOT 1
- Support for getStackTrace() and setStackTrace() HOT 1
- Race condition for _tick and _reported
- Suspiciously short list of threads when recording ANRError as Crashlytics non-fatal exception HOT 7
- Set Thread priority below main thread.
- anr debug exception please help me
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from anr-watchdog.