[lttng-dev] [NEW] lttng-tools network streaming

David Goulet dgoulet at efficios.com
Wed Jul 11 14:39:56 EDT 2012


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Hi everyone,

I just pushed a huge amount of work into master of lttng-tools which
is the network streaming support. Please read the commit message
appended to this email for more information.

Since LTTng is an open source _community_, this feature is now in
"crowd sourcing QA mode" :). Feel free to test, report bugs,
contribute or comment on anything. Again, please do so!
(https://bugs.lttng.orgprojects/lttng-tools)

Here is a quick HOWTO in order to test the feature with kernel tracing
("remote" will receive the trace and "target" will stream the trace):

(remote) $ lttng-relayd -d  --> (daemonize the relayd)
(target) # lttng create mystream
         # lttng enable-consumer -k net://<remote_ip_or_hostname>
         # lttng enable-event -k sched_switch
         # lttng start
         # lttng stop
(remote) Check in $(HOME)/lttng-traces/<target_hostname>/...

Hopefully it will work for you :)

There is a known bug so please refer to the commit message below.

Big thanks to all the LTTng dev team especially Julien Desfossez
(relayd author), Mathieu Desnoyers and Yannick Brosseau for helping
with design, code and birth of this amazing feature :)!

Please note that man page for the relayd, streaming HOWTOs and
streaming protocol specification will come in the next days in doc/.
So for now, experiment with it and read the --help of each new command :).

Cheers! I'm out for a beer :D
David

commit 00e2e675d54dc726a7c8f8887c889cc8ef022003
Author: David Goulet <dgoulet at efficios.com>
Date:   Wed Jul 11 13:20:39 2012 -0400

    Network streaming support

    This is a huge commit integrating a lot of new feature for network
    streaming support with the lttng-relayd previously merged.

    Please note that this commit is the initial import of the network
    streaming feature meaning that this is NOT stable and SHOULD be
    considered experimental hence not suited for production deployment.

    API Changes:

    lttng_create_session_uri(), lttng_enable_consumer(),
    lttng_set_consumer_uri() and lttng_disable_consumer() calls are added.
    The lttng command line now supports these new calls by introducing two
    new commands and one modified. (Please look at the --help option for
    more details).

    $ lttng enable-consumer
    $ lttng disable-consumer

    The "lttng create" command can now take new arguments to specify the
    destination URI for network streaming. There is also a new flag which
    allows the user to disable the consumer for the session.

    At this point, the now old deprecated lttng_create_session() call is
    still supported but SHOULD be replaced by lttng_create_session_uri().
    More calls will be added to the API in order to facilitate the
creation
    of lttng URI.

    Network streaming:

    Both kernel and user space tracing are supported for network
streaming.
    For now, only IPv4 and IPv6 protocol over TCP is supported. Two
network
    socket are used where one is for control commands and the second
one is
    for data transmission. The port are respectively 5342 and 5343.

    BUGS: Streaming high throughput traces (e.g lttng enable-event -a -k)
    with low bandwitdh available to the relayd, the tracer does not behave
    well when the metadata are not emptied enough quickly so data are
    missing on the remote target and the tracing is simply not stoppable.
    This is a known bug and future iterations will try to fix it.

    WARNING: At this stage, there is _NO_ security features meaning no
    remote authentication on the relayd, no transport layer encryption or
    network secure handshake of some sort. So, uses only for in-vitro
    experiment or on _trusted_ networks.

    Signed-off-by: Julien Desfossez <julien.desfossez at efficios.com>
    Signed-off-by: David Goulet <dgoulet at efficios.com>
-----BEGIN PGP SIGNATURE-----

iQEcBAEBCgAGBQJP/ch5AAoJEELoaioR9I02IYsH/RjaaUTWZDKL/sotQxfdKU/k
Xq1qjrCiluLbgLJ+CvQDPCIEXzzWbySfQG/REUVbvN9bjQ+DPBMBdpQ1V/bjiAFt
aOnpb8Om8YP1oMAXP+Mg7TYGTVMagAURx4IA1YP/Fkmv/tU+OhZEX00YDH3tu6Q6
sLTvEAzTBkrjh2HjeqlnKmevrZ4+OTr8LaNmDFznk3vUNyIkbGpFVYLfJWGI3CYF
3zAajqccZHosDDOVV1TMYkY+ZlVto20TJLjw5T+/efKaPcROpgnbN4guA5mdrDmr
heyt6kGnhS30XWaZ8MS57IuySCWCIhpGTWw9kGrd3zXhgYRa4cion3+oXN/KxSU=
=GEdj
-----END PGP SIGNATURE-----



More information about the lttng-dev mailing list