X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng-relayd%2Fsession.h;h=288672dcc193312d2e72e13048cc68ec00ec4d6e;hp=6442c17ee4522f92a08d82d31aaa820b8cc5ff52;hb=d37856b8d3033144818786de1c5c5b898fe2946e;hpb=62bad3bf0aaade7f80ba4e536e1b9e734ec2e051 diff --git a/src/bin/lttng-relayd/session.h b/src/bin/lttng-relayd/session.h index 6442c17ee..288672dcc 100644 --- a/src/bin/lttng-relayd/session.h +++ b/src/bin/lttng-relayd/session.h @@ -55,6 +55,14 @@ struct relay_session { LTTNG_OPTIONAL(time_t) creation_time; char session_name[LTTNG_NAME_MAX]; char hostname[LTTNG_HOST_NAME_MAX]; + char base_path[LTTNG_PATH_MAX]; + /* + * Session output path relative to relayd's output path. + * Will be empty when interacting with peers < 2.11 since their + * streams' path are expressed relative to the relay daemon's + * output path. + */ + char output_path[LTTNG_PATH_MAX]; uint32_t live_timer; /* Session in snapshot mode. */ @@ -86,6 +94,10 @@ struct relay_session { */ bool aborted; + bool session_name_contains_creation_time; + /* Whether session has performed an explicit rotation. */ + bool has_rotated; + /* Contains ctf_trace object of that session indexed by path name. */ struct lttng_ht *ctf_traces_ht; @@ -125,7 +137,7 @@ struct relay_session { }; struct relay_session *session_create(const char *session_name, - const char *hostname, + const char *hostname, const char *base_path, uint32_t live_timer, bool snapshot, const lttng_uuid sessiond_uuid, @@ -133,7 +145,8 @@ struct relay_session *session_create(const char *session_name, const uint64_t *current_chunk_id, const time_t *creation_time, uint32_t major, - uint32_t minor); + uint32_t minor, + bool session_name_contains_creation_timestamp); struct relay_session *session_get_by_id(uint64_t id); bool session_get(struct relay_session *session); void session_put(struct relay_session *session); @@ -141,6 +154,9 @@ void session_put(struct relay_session *session); int session_close(struct relay_session *session); int session_abort(struct relay_session *session); +int session_init_output_directory_handle(struct relay_session *session, + struct lttng_directory_handle *handle); + void print_sessions(void); #endif /* _SESSION_H */