X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;ds=sidebyside;f=include%2Flttng%2Fliblttngctl.h;h=71c5e820805e2d9db11a3a7c61c532e760f1ba06;hb=ee0326c0c46f4b02e9eab0b2917b62d2c55aa346;hp=ed1f703b3308e1163d8ba60ec3a210fcdd1b68fe;hpb=826d496db7f18f2ae1f7e0d2f4fc381144ed04a4;p=lttng-tools.git diff --git a/include/lttng/liblttngctl.h b/include/lttng/liblttngctl.h index ed1f703b3..71c5e8208 100644 --- a/include/lttng/liblttngctl.h +++ b/include/lttng/liblttngctl.h @@ -19,18 +19,56 @@ #ifndef _LIBLTTNGCTL_H #define _LIBLTTNGCTL_H +#include +#include + +/* Default unix group name for tracing. + */ #define DEFAULT_TRACING_GROUP "tracing" -/* - * From libuuid +/* Environment variable to set session daemon + * binary path. + */ +#define LTTNG_SESSIOND_PATH_ENV "LTTNG_SESSIOND_PATH" + +/* From libuuid */ #define UUID_STR_LEN 37 -extern int lttng_create_session(const char *name, char *session_id); +/* Trace type for lttng_trace. + */ +enum lttng_trace_type { + KERNEL, USERSPACE, +}; + +/* Simple structure representing a session. + */ +struct lttng_session { + char name[NAME_MAX]; + char uuid[UUID_STR_LEN]; +}; + +/* Simple trace representation. + */ +struct lttng_trace { + char name[NAME_MAX]; + pid_t pid; + enum lttng_trace_type type; +}; + +extern int lttng_create_session(char *name, uuid_t *session_id); +extern int lttng_destroy_session(uuid_t *uuid); extern int lttng_connect_sessiond(void); +extern int lttng_disconnect_sessiond(void); extern int lttng_set_tracing_group(const char *name); extern int lttng_check_session_daemon(void); extern const char *lttng_get_readable_code(int code); -extern size_t lttng_ust_list_apps(pid_t **pids); +extern int lttng_ust_list_apps(pid_t **pids); +extern int lttng_list_sessions(struct lttng_session **sessions); +extern int lttng_list_traces(uuid_t *uuid, struct lttng_trace **traces); +extern void lttng_set_current_session_uuid(char *uuid); +extern int lttng_ust_create_trace(pid_t pid); +extern int lttng_ust_start_trace(pid_t pid); +extern int lttng_ust_stop_trace(pid_t pid); #endif /* _LIBLTTNGCTL_H */