X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fcommon%2Fsessiond-comm%2Fsessiond-comm.h;h=8b1757438de448096337b7ae820513e59ae23891;hp=d9177cf37d8554c723e94a80a448839071042fc6;hb=8614e600d7a8dc653c473254fc302870d73f32ae;hpb=0a30bf9be799ddb162530ea7581172e923055973 diff --git a/src/common/sessiond-comm/sessiond-comm.h b/src/common/sessiond-comm/sessiond-comm.h index d9177cf37..8b1757438 100644 --- a/src/common/sessiond-comm/sessiond-comm.h +++ b/src/common/sessiond-comm/sessiond-comm.h @@ -35,7 +35,7 @@ #include #include #include -#include +#include #include #include @@ -107,7 +107,8 @@ enum lttcomm_sessiond_command { LTTNG_ROTATION_GET_INFO = 46, LTTNG_ROTATION_SET_SCHEDULE = 47, LTTNG_SESSION_LIST_ROTATION_SCHEDULES = 48, - LTTNG_CREATE_SESSION_EXT = 49 + LTTNG_CREATE_SESSION_EXT = 49, + LTTNG_CLEAR_SESSION = 50, }; enum lttcomm_relayd_command { @@ -131,14 +132,18 @@ enum lttcomm_relayd_command { RELAYD_STREAMS_SENT = 16, /* Ask the relay to reset the metadata trace file (2.8+) */ RELAYD_RESET_METADATA = 17, - /* Ask the relay to rotate a stream file (2.11+) */ - RELAYD_ROTATE_STREAM = 18, - /* Rename a chunk after the rotation is completed (2.11+) */ - RELAYD_ROTATE_RENAME = 19, - /* Check if a chunk has data pending (2.11+) */ - RELAYD_ROTATE_PENDING = 20, - /* Create a folder on the relayd FS (2.11+) */ - RELAYD_MKDIR = 21, + /* Ask the relay to rotate a set of stream files (2.11+) */ + RELAYD_ROTATE_STREAMS = 18, + /* Ask the relay to create a trace chunk (2.11+) */ + RELAYD_CREATE_TRACE_CHUNK = 19, + /* Ask the relay to close a trace chunk (2.11+) */ + RELAYD_CLOSE_TRACE_CHUNK = 20, + /* Ask the relay whether a trace chunk exists (2.11+) */ + RELAYD_TRACE_CHUNK_EXISTS = 21, + /* Get the current configuration of a relayd peer (2.12+) */ + RELAYD_GET_CONFIGURATION = 22, + + /* Feature branch specific commands start at 10000. */ }; /* @@ -181,6 +186,7 @@ enum lttcomm_return_code { LTTCOMM_CONSUMERD_TRACE_CHUNK_EXISTS_LOCAL, /* Trace chunk exists on consumer daemon. */ LTTCOMM_CONSUMERD_TRACE_CHUNK_EXISTS_REMOTE,/* Trace chunk exists on relay daemon. */ LTTCOMM_CONSUMERD_UNKNOWN_TRACE_CHUNK, /* Unknown trace chunk. */ + LTTCOMM_CONSUMERD_RELAYD_CLEAR_DISALLOWED, /* Relayd does not accept clear command. */ /* MUST be last element */ LTTCOMM_NR, /* Last element */ @@ -543,7 +549,7 @@ struct lttcomm_consumer_msg { uint64_t key; /* Unique channel key. */ /* ID of the session's current trace chunk. */ LTTNG_OPTIONAL_COMM(uint64_t) LTTNG_PACKED chunk_id; - unsigned char uuid[UUID_LEN]; /* uuid for ust tracer. */ + unsigned char uuid[LTTNG_UUID_LEN]; /* uuid for ust tracer. */ uint32_t chan_id; /* Channel ID on the tracer side. */ uint64_t tracefile_size; /* bytes */ uint32_t tracefile_count; /* number of tracefiles */ @@ -632,23 +638,25 @@ struct lttcomm_consumer_msg { * (relayd_id unset). * * `override_name` is left NULL (all-zeroes) if the - * chunk's name is not overriden. + * chunk's name is not overridden. */ LTTNG_OPTIONAL_COMM(uint64_t) LTTNG_PACKED relayd_id; char override_name[LTTNG_NAME_MAX]; uint64_t session_id; uint64_t chunk_id; uint64_t creation_timestamp; - struct { + LTTNG_OPTIONAL_COMM(struct { uint32_t uid; uint32_t gid; - } LTTNG_PACKED credentials; + } LTTNG_PACKED ) LTTNG_PACKED credentials; } LTTNG_PACKED create_trace_chunk; struct { LTTNG_OPTIONAL_COMM(uint64_t) LTTNG_PACKED relayd_id; uint64_t session_id; uint64_t chunk_id; uint64_t close_timestamp; + /* enum lttng_trace_chunk_command_type */ + LTTNG_OPTIONAL_COMM(uint32_t) LTTNG_PACKED close_command; } LTTNG_PACKED close_trace_chunk; struct { LTTNG_OPTIONAL_COMM(uint64_t) LTTNG_PACKED relayd_id; @@ -658,6 +666,9 @@ struct lttcomm_consumer_msg { struct { lttng_uuid sessiond_uuid; } LTTNG_PACKED init; + struct { + uint64_t key; + } LTTNG_PACKED clear_channel; } u; } LTTNG_PACKED; @@ -691,6 +702,12 @@ struct lttcomm_consumer_status_channel { unsigned int stream_count; } LTTNG_PACKED; +struct lttcomm_consumer_close_trace_chunk_reply { + enum lttcomm_return_code ret_code; + uint32_t path_length; + char path[]; +}; + #ifdef HAVE_LIBLTTNG_UST_CTL #include