usage: add trace2 entry upon warning()
commit0ee10fd12968b78dbd1ccbba108599a24f31f70b
authorJonathan Tan <jonathantanmy@google.com>
Mon, 23 Nov 2020 20:45:22 +0000 (23 12:45 -0800)
committerJunio C Hamano <gitster@pobox.com>
Wed, 25 Nov 2020 01:39:38 +0000 (24 17:39 -0800)
treee2d8e06bd9b321789d5b39e38af9ed18f33ec26a
parent898f80736c75878acc02dc55672317fcc0e0a5a6
usage: add trace2 entry upon warning()

Emit a trace2 error event whenever warning() is called, just like when
die(), error(), or usage() is called.

This helps debugging issues that would trigger warnings but not errors.
In particular, this might have helped debugging an issue I encountered
with commit graphs at $DAYJOB [1].

There is a tradeoff between including potentially relevant messages and
cluttering up the trace output produced. I think that warning() messages
should be included in traces, because by its nature, Git is used over
multiple invocations of the Git tool, and a failure (currently traced)
in a Git invocation might be caused by an unexpected interaction in a
previous Git invocation that only has a warning (currently untraced) as
a symptom - as is the case in [1].

[1] https://lore.kernel.org/git/20200629220744.1054093-1-jonathantanmy@google.com/

Signed-off-by: Jonathan Tan <jonathantanmy@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/technical/api-trace2.txt
usage.c