#include <stdint.h>
#include <sys/types.h>
-/* Default unix group name for tracing. */
-#define LTTNG_DEFAULT_TRACING_GROUP "tracing"
-
-/* Environment variable to set session daemon binary path. */
-#define LTTNG_SESSIOND_PATH_ENV "LTTNG_SESSIOND_PATH"
-
-/* Default trace output directory name */
-#define LTTNG_DEFAULT_TRACE_DIR_NAME "lttng-traces"
-
/*
* Event symbol length. Copied from LTTng kernel ABI.
*/
enum lttng_domain_type {
LTTNG_DOMAIN_KERNEL = 1,
LTTNG_DOMAIN_UST = 2,
+
+ /*
+ * For now, the domains below are not implemented. However, we keep them
+ * here in order to retain their enum values for future development. Note
+ * that it is on the roadmap to implement them.
+ *
LTTNG_DOMAIN_UST_EXEC_NAME = 3,
LTTNG_DOMAIN_UST_PID = 4,
LTTNG_DOMAIN_UST_PID_FOLLOW_CHILDREN = 5,
+ */
};
/*
* LTTng consumer mode
*/
enum lttng_event_output {
- LTTNG_EVENT_SPLICE = 0,
- LTTNG_EVENT_MMAP = 1,
+ LTTNG_EVENT_SPLICE = 0,
+ LTTNG_EVENT_MMAP = 1,
};
/* Event context possible type */
enum lttng_event_context_type {
- LTTNG_EVENT_CONTEXT_PID = 0,
- LTTNG_EVENT_CONTEXT_PERF_COUNTER = 1,
- LTTNG_EVENT_CONTEXT_COMM = 2,
- LTTNG_EVENT_CONTEXT_PRIO = 3,
- LTTNG_EVENT_CONTEXT_NICE = 4,
- LTTNG_EVENT_CONTEXT_VPID = 5,
- LTTNG_EVENT_CONTEXT_TID = 6,
- LTTNG_EVENT_CONTEXT_VTID = 7,
- LTTNG_EVENT_CONTEXT_PPID = 8,
- LTTNG_EVENT_CONTEXT_VPPID = 9,
+ LTTNG_EVENT_CONTEXT_PID = 0,
+ LTTNG_EVENT_CONTEXT_PERF_COUNTER = 1,
+ LTTNG_EVENT_CONTEXT_PROCNAME = 2,
+ LTTNG_EVENT_CONTEXT_PRIO = 3,
+ LTTNG_EVENT_CONTEXT_NICE = 4,
+ LTTNG_EVENT_CONTEXT_VPID = 5,
+ LTTNG_EVENT_CONTEXT_TID = 6,
+ LTTNG_EVENT_CONTEXT_VTID = 7,
+ LTTNG_EVENT_CONTEXT_PPID = 8,
+ LTTNG_EVENT_CONTEXT_VPPID = 9,
+ LTTNG_EVENT_CONTEXT_PTHREAD_ID = 10,
};
enum lttng_calibrate_type {
- LTTNG_CALIBRATE_FUNCTION = 0,
+ LTTNG_CALIBRATE_FUNCTION = 0,
};
struct lttng_domain {
struct lttng_event {
char name[LTTNG_SYMBOL_NAME_LEN];
char loglevel[LTTNG_SYMBOL_NAME_LEN];
+ int64_t loglevel_value;
enum lttng_event_type type;
uint32_t enabled;
pid_t pid;
* Channel information structure. For both kernel and user-space.
*/
struct lttng_channel {
- char name[NAME_MAX];
+ char name[LTTNG_SYMBOL_NAME_LEN];
uint32_t enabled;
struct lttng_channel_attr attr;
};
* The session will not be useable anymore, tracing will stopped for all
* registered trace and tracing buffers will be flushed.
*/
-extern int lttng_destroy_session(struct lttng_handle *handle);
+extern int lttng_destroy_session(const char *name);
/*
* List all tracing sessions.
*
* Return the size of the "lttng_domain" array. Caller must free(3).
*/
-extern int lttng_list_domains(struct lttng_handle *handle,
+extern int lttng_list_domains(const char *session_name,
struct lttng_domain **domains);
/*
/*
* Start tracing for *all* registered trace (kernel and user-space).
*/
-extern int lttng_start_tracing(struct lttng_handle *handle);
+extern int lttng_start_tracing(const char *session_name);
/*
* Stop tracing for *all* registered trace (kernel and user-space).
*/
-extern int lttng_stop_tracing(struct lttng_handle *handle);
+extern int lttng_stop_tracing(const char *session_name);
/*
* Add context to event for a specific channel.