X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=include%2Flttng%2Fsession.h;h=e626b00814ea1fec171a7d508d8d3495c0ea950a;hp=e0594d2e82e452bf072d90899b945b2afc31be3c;hb=beede00c4c60130c7689231b2dd4cb61a6aae34f;hpb=36dc412872fcb66af429ad895bb6bf8eaf258d78 diff --git a/include/lttng/session.h b/include/lttng/session.h index e0594d2e8..e626b0081 100644 --- a/include/lttng/session.h +++ b/include/lttng/session.h @@ -32,8 +32,16 @@ extern "C" { */ #define LTTNG_SESSION_PADDING1 12 struct lttng_session { - char name[NAME_MAX]; - /* The path where traces are written */ + char name[LTTNG_NAME_MAX]; + /* + * Human-readable representation of the trace's destination. + * In the case of a local tracing session, a path is provided: + * /path/to/the/output + * + * In the case of a remote (network) tracing session, the string has + * the following format: + * net://hostname/path:ctrl_port [data: data_port] + */ char path[PATH_MAX]; uint32_t enabled; /* enabled/started: 1, disabled/stopped: 0 */ uint32_t snapshot_mode; @@ -76,8 +84,7 @@ extern int lttng_create_session_snapshot(const char *name, * indexes are sent and metadata is checked for each packet. * * Name can't be NULL. If no URL is given, the default is to send the data to - * net://127.0.0.1. The timer_interval is in usec and by default set to 1000000 - * (1 second). + * net://127.0.0.1. The timer_interval is in usec. * * Return 0 on success else a negative LTTng error code. */ @@ -90,12 +97,25 @@ extern int lttng_create_session_live(const char *name, const char *url, * The session will not be usable, tracing will be stopped thus buffers will be * flushed. * + * This call will wait for data availability for each domain of the session, + * which can take an arbitrary amount of time. However, when returning the + * tracing data is guaranteed to be ready to be read and analyzed. + * + * lttng_destroy_session_no_wait() may be used if such a guarantee is not + * needed. + * * The name can't be NULL here. * * Return 0 on success else a negative LTTng error code. */ extern int lttng_destroy_session(const char *name); +/* + * Behaves exactly like lttng_destroy_session but does not wait for data + * availability. + */ +extern int lttng_destroy_session_no_wait(const char *name); + /* * List all the tracing sessions. *