[lttng-dev] [LTTng-UST RFC] Tracepoint Loglevels Specification

Anas Alkhatib anas.alkhatib at ericsson.com
Tue Feb 7 09:14:04 EST 2012


> -----Original Message-----
> From: Alexandre Montplaisir [mailto:alexandre.montplaisir at polymtl.ca] 
> Sent: February-02-12 11:57 AM
> To: Mathieu Desnoyers
> Cc: lttng-dev at lists.lttng.org
> Subject: Re: [lttng-dev] [LTTng-UST RFC] Tracepoint Loglevels 
> Specification
> 
> On 12-02-02 10:56 AM, Mathieu Desnoyers wrote:
> > [...]
> >
> > Indeed, as we dig further down within a process, we have to 
> use static 
> > compile-time/link-time entities to specify a smaller granularity.
> >
> > The reason why I propose these entities rather than more free-form 
> > "major/minor" is because I think we really need to impose 
> pre-defined 
> > loglevels that will allow selection of verbosity across the entire 
> > system (all applications) in a pre-defined way. If the 
> semantic is too 
> > loose, then we miss the ability to let users know what is happening 
> > when they select "minor" instead of "major", because these 
> identifiers 
> > do not map to anything concrete for the user.
> 
> But then again, this granularity will be just as good as the 
> people who use it when instrumenting their programs.
> 
> Looking at this quickly, I think 15 different levels is too 
> much. It should be limited to 5 imo. (less is more!) I 
> understand you want to pre-define stuff for the user's sake, 
> but in practice I doubt this will be used as intended. Some 
> (few) programmers will use everything correctly and 
> religiously, some others will only use 1-3, some will only 
> use TRACE_DEBUG, and so on, so it would be just as hard, if 
> not harder, for the end users trying to make sense out of it.
> 

The end user will adjust according to what they intend to trace.
Depending on how the app they are tracing is instrumented, with 
all 15 levels, 3 levels or just activating the DEBUG level.

To limit the log levels to just 5, because we *think* that is how
most people will use it is not the right way to proceed in my opinion.  

The 15 levels provided will cover the most detailed and rigorous 
programmers cases, and the rest of us are not obligated to make use 
of all 15 in our code, If we choose to use less, that is our choice.

> >
> > I changed the detailed part of the list this morning, 
> removing "object"
> > and "class". New list:
> >
> >  * TRACE_EMERG    0
> >  * system is unusable
> >  *
> >  * TRACE_ALERT    1
> >  * action must be taken immediately
> >  *
> >  * TRACE_CRIT     2
> >  * critical conditions
> >  *
> >  * TRACE_ERR      3
> >  * error conditions
> >  *
> >  * TRACE_WARNING  4
> >  * warning conditions
> >  *
> >  * TRACE_NOTICE   5
> >  * normal, but significant, condition
> >  *
> >  * TRACE_INFO     6
> >  * informational message
> >  *
> >  * TRACE_SYSTEM   7
> >  * information has system-level scope (set of programs)
> >  *
> >  * TRACE_PROGRAM  8
> >  * information has program-level scope (set of processes)
> >  *
> >  * TRACE_PROCESS  9
> >  * information has process-level scope (set of modules)
> >  *
> >  * TRACE_MODULE   10
> >  * information has module (executable/library) scope (set of units)
> >  *
> >  * TRACE_UNIT     11
> >  * information has compilation unit scope (set of functions)
> >  *
> >  * TRACE_FUNCTION 12
> >  * information has function-level scope
> >  *
> >  * TRACE_DEFAULT  13
> >  * default trace loglevel (TRACEPOINT_EVENT default)
> >  *
> >  * TRACE_VERBOSE  14
> >  * verbose information
> >  *
> >  * TRACE_DEBUG    15
> >  * debug-level message (trace_printf default)
> >
> > Thoughts ?
> >
> > Mathieu
> >
> 
> 
> --
> Alexandre Montplaisir
> DORSAL lab,
> École Polytechnique de Montréal
> 
> 
> _______________________________________________
> lttng-dev mailing list
> lttng-dev at lists.lttng.org
> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
> 


More information about the lttng-dev mailing list