Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7)

Issue 2727573004: [Android Crash Reporting] Simplify crash report upload code. (Closed)

Created:
3 years, 9 months ago by Ilya Sherman
Modified:
3 years, 9 months ago
Reviewers:
gsennton, Maria
CC:
chromium-reviews, kalyank, sadrul, asvitkine+watch_chromium.org, agrieve+watch_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[Android Crash Reporting] Simplify crash report upload code. In particular: run the code to extract logcat output within the context of the main Chrome process/service, rather than kicking off the work to a pair of background services. Moreover, dramatically simplify the MetricsUploadService code: remove all but one of the intents that it handles. BUG=694884 R=mariakhomenko@chromium.org Review-Url: https://codereview.chromium.org/2727573004 Cr-Commit-Position: refs/heads/master@{#455704} Committed: https://chromium.googlesource.com/chromium/src/+/a9a8f4e062bd1c72c3b511de3c41611e24b7949e

Patch Set 1 #

Patch Set 2 : --similarity=20 #

Patch Set 3 : Update tests #

Patch Set 4 : Cleaned up a bit #

Patch Set 5 : Rebase harder #

Total comments: 3

Patch Set 6 : Self-review #

Patch Set 7 : This CL is now fully armed and operational #

Patch Set 8 : Mebbe fix findbugs bugs? #

Patch Set 9 : Mark IOException as thrown #

Patch Set 10 : Simplify the test code exception handling a bit #

Total comments: 49

Patch Set 11 : 15-minute timeout for logcat extraction (and address other code review comments) #

Patch Set 12 : Tuck up one more return stmt #

Total comments: 2

Patch Set 13 : Add a histogram to measure how many pending minidumps are present on startup #

Patch Set 14 : Rebase #

Patch Set 15 : Fix up a comment #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+397 lines, -1734 lines) Patch
M chrome/android/java/AndroidManifest.xml View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -4 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 7 chunks +113 lines, -18 lines 2 comments Download
D chrome/android/java/src/org/chromium/chrome/browser/crash/LogcatExtractionCallable.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -421 lines 0 comments Download
A + chrome/android/java/src/org/chromium/chrome/browser/crash/LogcatExtractionRunnable.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 6 chunks +33 lines, -119 lines 0 comments Download
D chrome/android/java/src/org/chromium/chrome/browser/crash/LogcatExtractionService.java View 1 chunk +0 lines, -68 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpDirectoryObserver.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +19 lines, -24 lines 0 comments Download
A + chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpLogcatPrepender.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +76 lines, -108 lines 0 comments Download
D chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpPreparationCallable.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -197 lines 0 comments Download
D chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpPreparationService.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -72 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadService.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 7 chunks +34 lines, -141 lines 0 comments Download
M chrome/android/java_sources.gni View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +4 lines, -6 lines 0 comments Download
D chrome/android/javatests/src/org/chromium/chrome/browser/crash/LogcatExtractionCallableTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -98 lines 0 comments Download
A + chrome/android/javatests/src/org/chromium/chrome/browser/crash/LogcatExtractionRunnableTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +64 lines, -51 lines 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/crash/MinidumpUploadServiceTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 11 chunks +10 lines, -159 lines 0 comments Download
D chrome/android/junit/src/org/chromium/chrome/browser/crash/LogcatExtractionCallableUnitTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -221 lines 0 comments Download
A + chrome/android/junit/src/org/chromium/chrome/browser/crash/LogcatExtractionRunnableUnitTest.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +21 lines, -21 lines 0 comments Download
M components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/CrashFileManager.java View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +0 lines, -6 lines 0 comments Download
M tools/metrics/histograms/histograms.xml View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +23 lines, -0 lines 0 comments Download

Messages

Total messages: 64 (41 generated)
Ilya Sherman
Maria, PTAL. I still need to update some tests, but I've manually verified the functionality, ...
3 years, 9 months ago (2017-03-02 03:22:24 UTC) #1
Ilya Sherman
Okay, tests are now updated as well. Maria, PTAL! =)
3 years, 9 months ago (2017-03-02 23:22:08 UTC) #2
Maria
On 2017/03/02 23:22:08, Ilya Sherman wrote: > Okay, tests are now updated as well. Maria, ...
3 years, 9 months ago (2017-03-03 00:17:19 UTC) #9
Maria
https://codereview.chromium.org/2727573004/diff/80001/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpDirectoryObserver.java File chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpDirectoryObserver.java (right): https://codereview.chromium.org/2727573004/diff/80001/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpDirectoryObserver.java#newcode37 chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpDirectoryObserver.java:37: new Thread(new LogcatExtractionRunnable(context, path), "MinidumpLogcatWorkerThread") I would use AsyncTask ...
3 years, 9 months ago (2017-03-03 00:50:41 UTC) #10
Maria
https://codereview.chromium.org/2727573004/diff/80001/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpDirectoryObserver.java File chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpDirectoryObserver.java (right): https://codereview.chromium.org/2727573004/diff/80001/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpDirectoryObserver.java#newcode37 chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpDirectoryObserver.java:37: new Thread(new LogcatExtractionRunnable(context, path), "MinidumpLogcatWorkerThread") On 2017/03/03 00:50:41, Maria ...
3 years, 9 months ago (2017-03-03 19:44:21 UTC) #13
Ilya Sherman
Thanks for the review, Maria! I've now added code to handle appending logcat output to ...
3 years, 9 months ago (2017-03-04 23:31:37 UTC) #17
Ilya Sherman
I've now also manually verified that this all seems to work. PTAL!
3 years, 9 months ago (2017-03-07 01:24:29 UTC) #31
Maria
Didn't look at the tests yet, will take a look tomorrow. https://codereview.chromium.org/2727573004/diff/180001/chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java File chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java (right): ...
3 years, 9 months ago (2017-03-07 06:36:39 UTC) #34
gsennton
I also haven't looked at the tests yet. Is all the heavy-duty work put in ...
3 years, 9 months ago (2017-03-07 18:32:04 UTC) #35
Maria
https://codereview.chromium.org/2727573004/diff/180001/chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java File chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java (right): https://codereview.chromium.org/2727573004/diff/180001/chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java#newcode366 chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java:366: return ageInHours < 1; On 2017/03/07 18:32:04, gsennton wrote: ...
3 years, 9 months ago (2017-03-07 20:04:57 UTC) #36
Ilya Sherman
https://codereview.chromium.org/2727573004/diff/180001/chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java File chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java (right): https://codereview.chromium.org/2727573004/diff/180001/chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java#newcode255 chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java:255: TimeUnit.MILLISECONDS); On 2017/03/07 06:36:39, Maria wrote: > looks like ...
3 years, 9 months ago (2017-03-08 02:32:45 UTC) #39
Maria
lgtm https://codereview.chromium.org/2727573004/diff/180001/chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java File chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java (right): https://codereview.chromium.org/2727573004/diff/180001/chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java#newcode366 chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java:366: return ageInHours < 1; On 2017/03/08 02:32:44, Ilya ...
3 years, 9 months ago (2017-03-08 06:18:47 UTC) #44
Ilya Sherman
Thanks! I'll address your comments in the morning, and also wait for Gustav's review prior ...
3 years, 9 months ago (2017-03-08 09:12:30 UTC) #45
gsennton
Regarding the 'append-logcat-to-only-one-minidump' question, it sounds like having a logcat for just one minidump is ...
3 years, 9 months ago (2017-03-08 15:18:41 UTC) #46
gsennton
lgtm modulo going through the latest comments ;) (and following up on Maria's note on ...
3 years, 9 months ago (2017-03-08 18:08:18 UTC) #47
Ilya Sherman
Thank you both for the review! Maria, would you mind taking one last look to ...
3 years, 9 months ago (2017-03-09 01:08:45 UTC) #49
Maria
lgtm https://codereview.chromium.org/2727573004/diff/280001/chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java File chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java (right): https://codereview.chromium.org/2727573004/diff/280001/chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java#newcode394 chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java:394: .executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); this doesn't look like correct formatting to ...
3 years, 9 months ago (2017-03-09 01:27:57 UTC) #51
Ilya Sherman
https://codereview.chromium.org/2727573004/diff/280001/chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java File chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java (right): https://codereview.chromium.org/2727573004/diff/280001/chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java#newcode394 chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java:394: .executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); On 2017/03/09 01:27:57, Maria wrote: > this doesn't ...
3 years, 9 months ago (2017-03-09 01:29:59 UTC) #52
chromium-reviews
OK. On Wed, Mar 8, 2017 at 5:29 PM <isherman@chromium.org> wrote: > > > https://codereview.chromium.org/2727573004/diff/280001/chrome/android/java/src/org/chromium/chrome/browser/DeferredStartupHandler.java ...
3 years, 9 months ago (2017-03-09 01:30:49 UTC) #56
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2727573004/280001
3 years, 9 months ago (2017-03-09 01:31:20 UTC) #57
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/397489)
3 years, 9 months ago (2017-03-09 02:32:30 UTC) #59
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2727573004/280001
3 years, 9 months ago (2017-03-09 08:14:40 UTC) #61
commit-bot: I haz the power
3 years, 9 months ago (2017-03-09 09:06:34 UTC) #64
Message was sent while issue was closed.
Committed patchset #15 (id:280001) as
https://chromium.googlesource.com/chromium/src/+/a9a8f4e062bd1c72c3b511de3c41...

Powered by Google App Engine
This is Rietveld 408576698