Commit Graph

57 Commits

Author SHA1 Message Date
Alessio Placitelli
fcc1e2b7b8 Bug 1352496 - Enable sending other child processes crash pings from the CrashManager. r=bsmedberg,ted
MozReview-Commit-ID: bG5iphe9Bc
2017-04-03 14:43:47 +02:00
Gabriele Svelto
ad6e2212ea Bug 1345153 - When the pingsender fails to send a ping, persist it to disk so that it can be sent later via regular telemetry; r=chutten,ted
Currently we hand over a crash ping to the pingsender via a pipe; if the
pingsender fails to send the ping we rely on the CrashManager assembling and
sending one instead. Since the crashmanager is not aware of whether the ping
was sent or not this causes duplication on the server side. To solve this
problem we save the ping to disk instead, read it from the pingsender and
delete the file only if the ping was sent. In this scenario the CrashManager
will know that a ping was already sent and will not send a new one.

This patch removes all the code used to deal with pipes between the telemetry,
crashreporter and pingsender code and also tries to cut down the amount of
platform-specific code we have in this machinery.

MozReview-Commit-ID: ASm2jnDagCK
2017-03-27 12:38:39 +02:00
Carsten "Tomcat" Book
6610746b51 merge mozilla-inbound to mozilla-central a=merge 2017-03-22 14:26:27 +01:00
Mark Banner
ec9074e132 Bug 1347712 - Change the testing configurations into ESLint configurations within eslint-plugin-mozilla - automatically update .eslintrc.js test config files for new config locations. r=jaws
MozReview-Commit-ID: LH0CQOPfoe6
2017-03-20 12:36:37 +01:00
Gabriele Svelto
30d88a559a Bug 1322611 - After a crash compute the SHA256 hash of a minidump and attach it to the crash ping; r=Ted, nchen
This patch changes the crashreporter client code as well as the crash service
code to compute a SHA256 hash of a crash' minidump file and add it to the
crash ping. The crash service code computes the hash on the fly before handing
over the crash to the crash manager; the crash manager will then add it to the
crash ping. The crashreporter client on the other hand sends the hash via the
ping it generates but it also adds it to the event file so that the crash
manager can pick it up and send it along with its own crash ping. On Fennec
the crashreporter activity takes care of computing the hash.

SHA256 hash computation uses nsICryptoHash in the crash service, the
java.security.MessageDigest class in Fennec, the bundled NSS library in the
crashreporter when running on Windows and Mac and the system-provided NSS
library under Linux. The latter is required because the crashreporter client
uses the system curl library which is linked to NSS and which would thus clash
with the bundled one if used together.

This patch introduces two new methods for the nsICrashService interface:
|getMinidumpForID()| and |getExtraFileForID()|, these reliably retrieve the
.dmp and .extra files associated with a crash and ensure the files exist
before returning. These new methods are used in the CrashService for
processing and will become the only way to reliably retrieve those files
from a crash ID.

MozReview-Commit-ID: 8BKvqj6URcO
2017-02-16 07:36:57 +01:00
Chris H-C
80d9deaf2e bug 1338627 - Add crashTime to crash pings data-review=bsmedberg r=gsvelto
crashDate having only per-day resolution was making client delay analysis
rather inaccurate.

crashTime is an ISO8601 string with per-hour resolution which should smooth
things over on the analysis side.

If per-hour is still too coarse, the use of an ISO string allows us to adapt
later to increasing the resolution, if it passes data review. The underlying
crash timestamp has per-second resolution.

MozReview-Commit-ID: 2hwJHSi8Xje
2017-02-16 13:13:38 -05:00
Mark Banner
55868dde7c Bug 503613 - Remove old 'tail =' lines from xpcshell.ini files; r=gps
MozReview-Commit-ID: 62Hp5ISxowJ
2017-01-18 10:30:39 +00:00
Mark Banner
309757c14f Bug 1328565 - Prevent cases of Cu.import importing into variables and global scope at the same time. r=mossop
MozReview-Commit-ID: CXly2RhNpRP
2017-01-04 19:37:43 +00:00
Mark Banner
d07f540195 Bug 1328338 - Fix more no-undef eslint issues in toolkit/ and browser/. r=mossop
MozReview-Commit-ID: 78dXLYVW1gC
2017-01-03 11:55:24 +00:00
Gabriele Svelto
921d52f071 Bug 1293656 - Send crash pings for content crashes complete with stack traces r=bsmedberg
* * *
Bug 1293656 - Fix the test_process_error.xul test
2016-10-19 12:51:29 +02:00
Gabriele Svelto
7af207f5bf Bug 1293656 - Store all crash annotations in the crash manager's database and filter out privacy-sensitive ones when sending a crash ping r=bsmedberg 2016-10-19 12:48:19 +02:00
Gabriele Svelto
2cb6197414 Bug 1319702 - Fix races in the CrashManager and CrashSubmit objects and in the related tests r=bsmedberg 2016-11-23 11:28:04 +01:00
Dave Townsend
12596ced47 Bug 1316882: Turn on space-infix-ops eslint rule. r=jaws
MozReview-Commit-ID: HBpjT2uHJaZ
2016-11-10 14:48:04 -08:00
Sebastian Hengst
6cf65ed900 Bug 1310297 - Remove test annotations using b2g, mulet or gonk: toolkit. r=RyanVM
MozReview-Commit-ID: I5LuDjnM7By
2016-11-05 11:29:22 +01:00
Jared Wein
0c024fa9ca Bug 1312486 - Enable no-extra-boolean-cast, no-new-object, no-shadow-restricted-names, and spaced-comment rules for eslint. r=standard8
MozReview-Commit-ID: 7Gx90a5y8t6
2016-10-24 13:14:19 -04:00
Mark Banner
233309fbe2 Bug 1251003 - Change .eslintrc files to .eslintrc.js to avoid obsolete config file format. r=mossop
MozReview-Commit-ID: JrbFxQ5rj6I
2016-10-18 08:38:10 +01:00
Gabriele Svelto
1a18e9712e Bug 1280484 - Add stack traces to the crash ping r=bsmedberg 2016-10-17 12:56:45 +02:00
David Anderson
43cff5276f Add GPU process support to the crash reporting service. (bug 1278717, r=ted) 2016-10-14 23:59:29 -07:00
Benjamin Smedberg
8bdab4404f Bug 1187270 - Add Telemetry session ID to crash annotations, r=gfritzsche
MozReview-Commit-ID: GwVI0dfsT4H
2016-03-14 09:31:19 -04:00
Daniel Holbert
ca38f91a55 backout d85b18faba72 (bug 1187270) for build bustage. 2016-03-15 15:51:56 -07:00
Benjamin Smedberg
b97feb5d63 Bug 1187270 - Add Telemetry session ID to crash annotations, r=gfritzsche
MozReview-Commit-ID: GwVI0dfsT4H
2016-03-14 09:31:19 -04:00
Dave Townsend
8dc7f59eb3 Bug 1229142: Link browser and toolkit test directory to the shared eslintrc files. r=Standard8 2015-11-30 13:05:00 -08:00
Dave Townsend
27d70dc531 Bug 1229519: Fix crash manager to pass eslint checks. r=mak 2015-12-03 10:01:18 -08:00
Carsten "Tomcat" Book
036e6d2fa3 Backed out 2 changesets (bug 1202902) to recking bug 1202902 to be able to reopen inbound on a CLOSED TREE
Backed out changeset 647025383676 (bug 1202902)
Backed out changeset d70c7fe532c6 (bug 1202902)
2015-10-07 14:03:21 +02:00
Carsten "Tomcat" Book
12369728f5 Backed out 1 changesets (bug 1202902) for causing merge conflicts to mozilla-central
Backed out changeset cfc1820361f5 (bug 1202902)
2015-10-07 12:13:45 +02:00
Shu-yu Guo
474f49adb7 Bug 1202902 - Scripted fix the world. 2015-10-06 14:00:31 -07:00
Shu-yu Guo
37989840cd Bug 1202902 - Mass replace toplevel 'let' with 'var' in preparation for global lexical scope. (rs=jorendorff) 2015-09-15 11:19:45 -07:00
Benjamin Smedberg
553b8282f9 Bug 1199662 - Crash ping environment block is broken when any string field contains a quotation mark. Unescape INI fields properly using the library that already exists for the purpose. r=ted 2015-08-28 12:53:43 -04:00
Benjamin Smedberg
2d706e98b8 Bug 1121013 part C - report a new crash ping type on main-process crashes, and record submission rate/failure information in telemetry. Plugin/content crashes are already recorded via SUBPROCESS_ABNORMAL_ABORT and SUBPROCESS_CRASHES_WITH_DUMP and this patch leaves that unchanged. r=gfritzsche 2015-03-30 17:48:11 -04:00
David Major
0bb08704f6 Bug 1135543 - Part 3: Create events file format crash.main.2 which contains metadata; r=bsmedberg 2015-03-14 18:54:36 +13:00
David Major
1ec1349cf9 Bug 1135543 - Part 2 (no part 1): Add a |metadata| parameter to CrashManager.addCrash(); r=bsmedberg 2015-03-14 18:54:06 +13:00
Birunthan Mohanathas
ef70953489 Bug 1024672 - Part 6: Allow storing multiple crash classifications. r=bsmedberg 2014-10-16 16:14:16 +03:00
Andrew Halberstadt
11b824f09b Bug 1066735 - Remove root b2g and android specific xpcshell manifests, r=chmanchester 2014-10-07 18:18:28 -04:00
Shu-yu Guo
40c62f33a5 Bug 1001090 - Part 5: Fix errors in tests throughout the tree. (r=robcee,gavin) 2014-09-15 16:30:47 -07:00
Birunthan Mohanathas
070340cba4 Bug 1059390 - Part 5: Add and use CrashManager.generateSubmissionID(). r=gps 2014-09-02 10:02:40 -07:00
Birunthan Mohanathas
00064d37c8 Bug 1024672 - Part 5: Allow classifications to be stored in crash metadata. r=gps 2014-09-02 09:55:16 -07:00
Birunthan Mohanathas
e0284767de Bug 1059940 - Part 1: Expose CrashStore.reset() to clear all data. r=bsmedberg 2014-08-29 13:39:01 -07:00
Birunthan Mohanathas
4967a0296d Bug 1059390 - Part 4: Fix crash submission event file handling and add test. r=bsmedberg
This also changes things to use a "sub-" prefix for the generated submission ID
in order to distinguish it from a local/remote crash ID.
2014-08-29 13:38:53 -07:00
Birunthan Mohanathas
f6f91c7969 Bug 1059390 - Part 1: Allow remote Breakpad ID to be stored in crash metadata. r=gps 2014-08-28 21:03:02 -07:00
Birunthan Mohanathas
4ded33c6dd Bug 1024672 - Part 3: Remove CrashManager.addSubmission in favor of CrashManager.addSubmission{Attempt,Result}. r=gps 2014-08-21 15:43:50 -07:00
Birunthan Mohanathas
69fdcaf3e0 Bug 1024672 - Part 2: Convert submission details stored in separate crash records to crash metadata. r=gps 2014-08-21 15:43:46 -07:00
Birunthan Mohanathas
b0a8bba099 Bug 1024672 - Part 1: Allow submission details to be stored in crash metadata. r=gps 2014-08-21 15:43:42 -07:00
Drew Willcoxon
0276cab04a Bug 1009765 - Add GMP plugin crashes to FHR crash reporting (part 2: FHR, toolkit/components/crashes). r=gps 2014-08-08 15:41:07 -07:00
Birunthan Mohanathas
b47e48cd5d Bug 1049257 - Fix typo in CrashManager.addCrash() in order to update the crash date of existing items. r=gps 2014-08-07 21:52:05 -07:00
Gregory Szorc
01f2b41ccb Bug 1045421 - Remove date time bomb from test_crash_manager.js, add logging; r=gfritzsche
There was a hard-coded date in test_crash_manager.js of around August 3,
2013. This meant that about a year later we would start to run into
boundary issues since we weren't wrapping Date.now() inside
CrashManager.jsm.

It turns out the actual value of DUMMY_DATE doesn't really matter. So,
the test has been changed to produce a value that is reasonably modern.

While I was debugging this, I noticed we're not getting logging in the
tests. So I added that.
2014-07-29 09:47:59 -07:00
Wes Kocher
dc80025753 Bug 1045419 - Disable test_crash_manager.js for failures on a CLOSED TREE r=me 2014-07-28 20:14:19 -07:00
Steven MacLeod
24a63a5408 Bug 994707 - Introduce crash submission events and handle them. r=bsmedberg
This introduces a new crash event type for submissions and handles
them in the Crash Manager. These crash submissions will also be counted
in FHR.
2014-07-03 14:04:28 -04:00
Wes Kocher
945f586984 Backed out 3 changesets (bug 994707) for Valgrind and XPCShell bustage on a CLOSED TREE
Backed out changeset 76555f34c210 (bug 994707)
Backed out changeset 3dd92fb7c846 (bug 994707)
Backed out changeset 802779efce2b (bug 994707)
2014-07-01 11:04:30 -07:00
Steven MacLeod
eb0d005871 Bug 994707 - Introduce crash submission events and handle them. r=bsmedberg
This introduces a new crash event type for submissions and handles
them in the Crash Manager. These crash submissions will also be counted
in FHR.
2014-07-01 12:52:23 -04:00
Drew Willcoxon
d373f30a5b Bug 983313 - Write crash events for plugin crashes and hangs (part 1: main changes). r=bsmedberg 2014-05-12 11:58:18 -07:00