[lttng-dev] Babeltrace Patch
Jonathan Rajotte-Julien
jonathan.rajotte-julien at efficios.com
Thu Apr 12 10:53:04 EDT 2018
Hi Nesrine,
> I have already tried Tracecompass and lttng-scope and they match exactly my
> project use case.
>
> But as I said in the beginning, I am working on my *graduation project* and
> I have to develop *client/server applications communicating through TCP
> socket (in C language).*
Unless you expose an actual problem that is not taken care of by one
of the existing tools and that you are willing to actually work on solving it,
I do not think this mailing list is appropriate for what you are trying to achieve.
>
> This is a short description of my project requirements:
> My project is divided into two parts:
>
> * 1)* Collecting traces from Qemu (It is already an instrumented user
> space application).
>
> * 2)* Sending the collected traces to a third-party tool for analysis.
>
> * Qemu, LTTng demons and my server application are running on the same
> Linux machine.
I guess this take care of 1.
>
> * The client application is running on a remote WINDOWS machine.
Sure why not, we do not have anything against Windows.
There is already efforts to port Babeltrace 1.5/2 to Windows using
Cygwin.[1] [2]
[1] https://ci.lttng.org/view/Babeltrace/job/babeltrace_stable-1.5_winbuild/
[2] https://ci.lttng.org/view/Babeltrace/job/babeltrace_stable-2.0_winbuild/
> Client is able now to control the trace remotely (start and stop) and
> get the trace collected in a text file.
>
>
> *This is what I am trying to do right now:*
>
> Instead of writing the traces to a text file, I would like to send those
> traces over TCP to my client application.
> So I think that the problem now is* how to make Babeltrace convert CTF
> traces and send them to my client application through TCP.*
If you absolutely do not want to use the available tools and do not want
to use ctf and/or live protocol as the intermediate format for transfer then you
could simply pipe the output from babeltrace to netcat (or your "application/server") and have a
process on the other side (Windows) listening on a port and do whatever you like. This will
come with all the pitfalls of piping text over the network.
I do think that the live protocol need some love and could profit from another
client implementation (apart from babeltrace). As for the actual ctf conversion
there is some java ctf reader [3] [4] that "should work out of the box" on
Windows. A java live ctf reader library/utility could be a nice project actually.
Based on the artifact found here [5], you can run babeltrace on Windows and pipe it
to your application directly.
Based on the artifact found here [6], lttng-relayd works on Windows.
So you got, lttng-relayd and babeltrace available on Windows giving you a lot of
possibilities on how to transfer your data to your analysis pipeline. But as you
said, this does not fit your "graduation project".
[3] https://github.com/efficios/ctf-java/tree/master/ctfreader
[4] http://git.eclipse.org/c/tracecompass/org.eclipse.tracecompass.git/tree/ctf
[5] https://ci.lttng.org/view/Babeltrace/job/babeltrace_stable-1.5_winbuild/19/arch=cygwin,build=std,conf=std/artifact/build/bin/
[6] https://ci.lttng.org/view/LTTng-tools/job/lttng-tools_stable-2.10_winbuild/arch=cygwin,babeltrace_version=stable-1.5,build=std,conf=relayd-only,liburcu_version=stable-0.9/50/artifact/build/bin/
>
> I would be grateful if you will give me some hints or another idea to
> satisfy my project requirements.
Since that you are more interested in the limited scope of your project I doubt
that we have any incentive to provide you ideas. This is not the point of this
mailing list. This mailing list is about improving the LTTng ecosystem.
Cheers
--
Jonathan Rajotte-Julien
More information about the lttng-dev
mailing list