From: David Goulet Date: Wed, 11 Jul 2012 17:20:39 +0000 (-0400) Subject: Network streaming support X-Git-Tag: v2.1.0-rc1~97 X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=commitdiff_plain;h=00e2e675d54dc726a7c8f8887c889cc8ef022003;hp=00e2e675d54dc726a7c8f8887c889cc8ef022003 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 Signed-off-by: David Goulet ---