[PATCH 2/2] doc/contributing: guidelines for logging, tracing and telemetry

Morten Brørup mb at smartsharesystems.com
Wed Jun 14 11:39:25 CEST 2023


> From: Bruce Richardson [mailto:bruce.richardson at intel.com]
> Sent: Wednesday, 14 June 2023 10.37
> 
> On Tue, Jun 13, 2023 at 09:38:55PM +0200, Morten Brørup wrote:
> > > From: Bruce Richardson [mailto:bruce.richardson at intel.com]
> > > Sent: Tuesday, 13 June 2023 16.34
> > >
> > > As discussed by DPDK technical board [1], out contributor guide should
> >
> > Typo: out -> our
> >
> > > include some details as to when to use logging vs tracing vs telemetry
> > > to provide the end user with information about the running process and
> > > the DPDK libraries it uses.
> > >
> > > [1] https://mails.dpdk.org/archives/dev/2023-March/265204.html
> > >
> > > Signed-off-by: Bruce Richardson <bruce.richardson at intel.com>
> > > ---
> >
> > Debug logging can be more verbose than trace in the one-off cases, so I have
> a slightly different personal preference. But perhaps this is mainly relevant
> in the abnormal execution paths, and thus already covered.
> >
> 
> Feel free to suggest alternate wordings if you have any. That particular
> item is hard to come up with good guidelines for - especially ones that are
> not pages long! :-)

+  * For cases where a path through the code is only likely to be taken once,
+    for example, initialization code, either *logging* at ``DEBUG`` level or *tracing* may be used -
+    though tracing is preferred.

How about adding this sentence at the end of the bullet:
+    though tracing is preferred. When conveying a lot of information, *logging* with more details can supplement *tracing* with the basic details.

+  * Where a path is to be taken multiple times within a short timeframe, for example,
+    datapath or regular control plane code, *tracing* should be used.

Capitalize the first letter at the bullets: "* for"->"* For" and "* where"->"* Where"

> 
> > Anyway, I agree with everything in this patch.
> >
> > Acked-by: Morten Brørup <mb at smartsharesystems.com>
> >
> 
> Thanks.
> 
> > You might also consider mentioning the xyz_dump(FILE *f) functions such as
> rte_mempool_list_dump(FILE *f).
> >
> > I find this type of semi-structured verbose dumping very useful for
> investigating the state of systems in production. Our debug CLI provides
> access to these _dump() functions, including some of our own, from various
> subsystems in the application.
> >
> 
> I'll try and put some mention of that in V2.
> 
> /Bruce


More information about the dev mailing list