[meta] Simplify log parsing - switch to artifacts for Perfherder data and failure lines
Categories
(Tree Management :: Treeherder, enhancement)
Tracking
(Not tracked)
People
(Reporter: sclements, Unassigned)
References
(Depends on 1 open bug)
Details
(Whiteboard: [fxp])
Per a few recent discussions, log parsing could be greatly simplified and made more resilient if we weren't parsing live_backing logs for PERFHERDER_DATA log lines and failure lines for every task.
A few steps to take:
-
Switch to consuming Perfherder artifacts (json would be ideal)
-
Switch to only consuming error_summary.json files (standardized naming would be great, per bug 1629716)*. This will also help with data Push Health provides since it relies on data from these logs. Currently we're doing both (if an error_summary file exists) with the TextLogError/Step lines used for the log viewer and the bug suggestions API.
- In order to implement #2, we'd need to investigate whether we can get non-browser crash data some other way than from the live_backing log.
Reporter | ||
Comment 1•4 years ago
|
||
We also might be able to reduce table size further in Treeherder since failure lines from the live_backing log are stored in the TextLogError table and data from the error summary logs are stored in the FailureLines table.
Assignee | ||
Updated•2 years ago
|
Updated•6 days ago
|
Updated•6 days ago
|
Comment 2•6 days ago
|
||
Big +1 to consuming a specialized artifact over parsing logs.
But while we're changing the ingestion, I would also like to request that the artifact support a custom path, and possibly even multiple paths.
We have a new type of Taskcluster task that farms out builds to Bitrise. In order to cut costs (because all these tasks do is poll the Bitrise API in a loop), we've added the ability for them to trigger multiple Bitrise workflows at once. But this means that we need to namespace the artifacts from those workflows, e.g instead of public/live.log
, it is public/<bitrise workflow name>/live.log
.
So when designing this new format, I'd like to request some way consumers can specify where the artifact(s) live (even if it's just hardcoded into a config in Treeherder, that's probably fine).
Description
•