[lttng-dev] Machine Interface

Christian Babeux christian.babeux at efficios.com
Thu Feb 6 11:11:39 EST 2014


Hi Jonathan,

> Multiples solutions come to mind:
> -XML
> -JSON
> -YAML
> -Custom syntax (like GDB Machine interface* as proposed by Alexandre
>                                 Montplaisir)

I would advocate for the use of XML for the machine interface. Two
reasons come to mind:

1 - The expression of hierarchy (session, events, etc.) is much easier with XML.

2 - In a recent post [1], it was decided that the configuration load
and restore (for sessions) would also use XML. This will introduce a
new dependency on libxml. If we were to choose yet another format for
the machine interface, we would probably need to introduce another
dependency to some library.

> Machine interface output would be generated only with --mi option and
> could contain additional information than regular output.

Perhaps adding --xml option to the relevant command? This would be
similar to svn machine interface [2].

Thanks,

Christian

[1] - http://lists.lttng.org/pipermail/lttng-dev/2013-December/022068.html
[2] - http://svnbook.red-bean.com/en/1.7/svn-book.html#svn.ref.svn.sw

On Wed, Feb 5, 2014 at 9:42 PM, Jonathan Rajotte
<jonathan.r.julien at gmail.com> wrote:
> Hello all,
>
> After speaking with Michel Dagenais, Geneviève Bastien, folks over at EfficiOs
> and Ericsson, a machine interface for lttng-tool would be a nice feature
> to have. Olivier Cotte and me will be working on MI for the
> next few weeks.
>
> The main objective would be to reduce parsing complexity
> in control tools.
> ex:Regex used in TMF control service.
> (org.eclipse.linuxtools.internal.lttng2.ui.views.control.service.LTTngControlService.java)
>
> Multiples solutions come to mind:
> -XML
> -JSON
> -YAML
> -Custom syntax (like GDB Machine interface* as proposed by Alexandre
>                                 Montplaisir)
>
> XML/JSON/YAML promote extensibility and ease of development for new tools
> dependant on lttng-tools by being established standards.
> On the other hand, they add dependencies to lttng-tools where a custom syntax
> would not.
>
> Machine interface output would be generated only with --mi option and
> could contain additional information than regular output.
>
> We are focusing on output right now but we may eventually add a 'mi'
> command for input if necessary.
>
> What do you think ?
>
> Thanks
>
>
> *https://sourceware.org/gdb/onlinedocs/gdb/GDB_002fMI.html
>
> --
> Jonathan Rajotte Julien
> Chargé de laboratoire INF1995
> Membre MD6
> Polytechnique 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