tree 9a302b14683538eaab8a3f08c43245b5c657bc55
parent 621ff6abb6ef454c78d254c59b8273b7eab2aa56
author Edwin Kempin <ekempin@google.com> 1632375351 +0200
committer Edwin Kempin <ekempin@google.com> 1632390859 +0200

Log caller when submit rules are evaluated and tracing is enabled

Evaluating submit rules can be expensive, e.g. the code owners submit
rules must do some significant amount of work as it needs to check for
each file in a change who are the code owners and whether they approved
the change. Invoking the evaluation of submit rules too often can lead
to quite some extra latency (e.g. at Google we know of cases where
plugins unintentionally trigger a lot of submit rule evaluations making
requests very slow). At the moment from traces we can see how often
submit rules are evaluated and how long the evaluation of the submit
rules takes, however the trace is not telling us which code triggered
the submit rule evaluation. Knowing this is important so that we can
judge whether running the submit rule evaluation is expected (e.g.
because the change is being reindex) or unexpected (e.g. a plugin uses
the changes API to retrieve change details but doesn't need any of the
fields that are populated by running the submit rules). To make the
caller available we are logging it now on fine level, which means that
it's being logged if tracing is enabled. To find the caller we use
CallerFinder which inspects the current stacktrace to find the first
interesting class in it. Please refer to the class javadoc of
CallerFinder for details on how this works. In general using
CallerFinder is fragile and can easily break, which is why it should
only be used if there is a great benefit from logging the caller, which
I think is the case here. I tested the used CallerFinder targets with
calls from Gerrit core and plugins to verify that they are producing
the right callers that tell us who triggered the call.

Signed-off-by: Edwin Kempin <ekempin@google.com>
Change-Id: Iebd3a23676b5564c3d5ccffd30130051542305ea
