[lttng-dev] LTTng UST structure support

chafraysse at free.fr chafraysse at free.fr
Fri Feb 10 13:12:49 EST 2023


Hi Jérémie,

Right, I missed the graph C api, my bad
Thanks for the example offer but I don't want to take up more of your 
time :)

Best regards,

Charles

> Hi Charles,
> 
> I'm not sure why you can't embed a graph in your application. The idea 
> is to make new events visible to your source component (or the iterator 
> it provides) by exposing some form of "user data" as a shared context 
> [1][2]. When the event is made available to the source through that 
> context, your "write" function can then pass it down the graph by 
> invoking the graph's "run" method.
> 
> I'll see if I can find time to produce an exemple if you think it would 
> be helpful.
> 
> Regards,
> Jérémie
> 
> [1] 
> https://babeltrace.org/docs/v2.0/libbabeltrace2/group__api-self-msg-iter.html#gaa0795c9c18725a844df5b5c705255977
> [2] 
> https://babeltrace.org/docs/v2.0/libbabeltrace2/group__api-self-comp.html#gae01283b1ee0c3945c4f54205a1528169
> [3] 
> https://babeltrace.org/docs/v2.0/libbabeltrace2/group__api-graph.html#gad2e1c1ab20d1400af1b552e70b3d567c
> 
> --
> Jérémie Galarneau
> EfficiOS Inc.
> https://www.efficios.com
> 
> Le 2023-02-09 10:15, chafraysse at free.fr a écrit :
> Hi Jérémie,
> 
> Thx for your reply,
> I'm doing a mockup on an Ubuntu host for now
> Ok for the graph, I cannot embed it in my application though
> I wanted that application to directly output CTF (with compound types,
> excluding LTTng) but I guess I'll output it in my format and then
> post-process it in a bt2 graph with a custom source and the ctf sink
> 
> Best regards,
> 
> Charles
> 
>> Hi Charles,
>> 
>> I can't really comment on what the packages do, but babeltrace2 
>> provides those headers under "include/babeltrace2-ctf-writer" since 
>> that library is somewhat "grafted" to the project. Which distro are 
>> you using?
>> 
>> As for where to "plug" your bindings, that library is there to 
>> maintain compatibility with the ctf-writer library that was provided 
>> by Babeltrace 1.x as it had a number of external users. I don't expect 
>> it to keep up with new CTF versions.
>> 
>> A more "future proof" integration point is to write a source 
>> component, and instanciate it in a graph configured with the CTF 
>> filesystem sink, and feed your events through the graph.
>> 
>> Let me know if you want more information,
>> Jérémie
>> 
>> --
>> Jérémie Galarneau
>> EfficiOS Inc.
>> https://www.efficios.com
>> 
>> Le 2023-02-02 17:06, chafraysse at free.fr a écrit :
>> Hi,
>> 
>> So I wrote a draft of Rust lib above ctf-writer, using the apis as
>> demonstrated in the ctf-writer test
>> For deployment I wanted to use "libbabeltrace2-ctf-writer.so" in the
>> "libbabeltrace2-dev" package but I could not locate the matching
>> includes in there or in the other babeltrace 2 packages
>> Did I miss them somewhere ? Should I have plugged in at another level
>> in babeltrace2 ?
>> 
>> Best regards,
>> 
>> Charles
>> 
>> ----- Mail original -----
>> De: chafraysse at free.fr
>> À: "Mathieu Desnoyers" <mathieu.desnoyers at efficios.com>
>> Cc: lttng-dev at lists.lttng.org
>> Envoyé: Lundi 16 Janvier 2023 10:38:28
>> Objet: Re: [lttng-dev] LTTng UST structure support
>> 
>> Hi Mathieu,
>> 
>> Thanks for your reply :)
>> I'll stick to bt2 modules in the meantime then
>> I'll already be saving a ton of time with those and the CTF spec which
>> is great !
>> 
>> Best regards,
>> 
>> Charles
>> 
>> ----- Mail original -----
>> De: "Mathieu Desnoyers" <mathieu.desnoyers at efficios.com>
>> À: chafraysse at free.fr, lttng-dev at lists.lttng.org
>> Envoyé: Jeudi 12 Janvier 2023 21:10:57
>> Objet: Re: [lttng-dev] LTTng UST structure support
>> 
>> On 2023-01-09 09:02, chafraysse--- via lttng-dev wrote:
>>> Hi,
>>> 
>>> I'm looking for a CTF writer to serialize instrumentations in an
>>> embedded Linux/Rust framework
>>> LTTng UST looked like a very strong option, but I want to serialize
>>> structures as CTF compound type structures and I did not see those
>>> supported in the doc or api
>> 
>> This is correct. I am currently working on a new project called
>> "libside" (see https://git.efficios.com/?p=libside.git;a=summary) 
>> which
>> features support for compound types.
>> 
>> However, we still need to do the heavy-lifting implementation work of
>> integrating this with LTTng-UST. This is the plan towards supporting
>> compound types in LTTng-UST.
>> 
>>> I'd love to have confirmation that I did not just miss something :)
>>> If LTTng UST is out for me I will probably try to use the ctf-writer
>>> module of babeltrace 2 instead
>> 
>> For now the ctf-writer modules of bt2 would be an alternative to
>> consider, but remember that it is not designed for low-impact tracing
>> such as lttng-ust. So it depends on how much tracer overhead/runtime
>> impact you can afford in your use-case.
>> 
>> Thanks,
>> 
>> Mathieu
>> 
>>> 
>>> Best regards,
>>> 
>>> Charles
>>> _______________________________________________
>>> lttng-dev mailing list
>>> lttng-dev at lists.lttng.org
>>> https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
>> 
>> --
>> Mathieu Desnoyers
>> EfficiOS Inc.
>> https://www.efficios.com


More information about the lttng-dev mailing list