Page MenuHomePhabricator

Improve error reporting / integration between Kibana and Phabricator
Closed, ResolvedPublic

Description

Goal: for a given fatal error log event, build an identity string for the error which correlates the same error across multiple mediawiki versions.

Determine the file & line number where the error occurred, by parsing the stack trace and other relevant information from the log event. For the identity string, drop the version number and the last digit of the line number, but keep the function name from the stack trace.

So for example, I propose to grab the bold sections from the following stack trace frame:

#0 /srv/mediawiki/php-1.34.0-wmf.11/vendor/wikibase/data-model/src/Entity/EntityId.php(138): {closure}(integer)
[1] [2] [3]

  1. filename
  2. line number
  3. function/arguments

This, plus the error message string can be hashed to produce a unique id which should be consistent across instances of the same error, even across multiple versions of the mediawiki code, assuming that the code hasn't changed significantly across versions.

Once the identity hash is built, it can be used to submit tasks to phabricator and to look up tasks in phabricator.

Event Timeline

@Aklapper: similar to T70820 but not a dupe. This is for project planning of a release engineering team project.

mmodell lowered the priority of this task from Medium to Low.

no longer a priority

Aklapper lowered the priority of this task from Low to Lowest.Aug 29 2018, 6:21 PM
Aklapper moved this task from Misc to Needs code (in Phab or bot) on the Phabricator board.
mmodell raised the priority of this task from Lowest to Medium.