lttng rotate command
[lttng-tools.git] / src / common / sessiond-comm / sessiond-comm.h
index f6179f31dc5132838516b5c75021d32eeecd6ada..5b7cc089ec4d9ec5ccf857bc8f67fd5fab2b7698 100644 (file)
@@ -31,6 +31,7 @@
 #include <lttng/save-internal.h>
 #include <lttng/channel-internal.h>
 #include <lttng/trigger/trigger-internal.h>
+#include <lttng/rotate-internal.h>
 #include <common/compat/socket.h>
 #include <common/uri.h>
 #include <common/defaults.h>
@@ -100,6 +101,9 @@ enum lttcomm_sessiond_command {
        LTTNG_REGENERATE_STATEDUMP          = 42,
        LTTNG_REGISTER_TRIGGER              = 43,
        LTTNG_UNREGISTER_TRIGGER            = 44,
+       LTTNG_ROTATE_SESSION                = 45,
+       LTTNG_ROTATION_GET_INFO             = 46,
+       LTTNG_SESSION_GET_CURRENT_OUTPUT    = 48,
 };
 
 enum lttcomm_relayd_command {
@@ -123,6 +127,14 @@ 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,
 };
 
 /*
@@ -321,6 +333,9 @@ struct lttcomm_session_msg {
                struct {
                        uint32_t length;
                } LTTNG_PACKED trigger;
+               struct {
+                       uint64_t rotation_id;
+               } LTTNG_PACKED get_rotation_info;
        } u;
 } LTTNG_PACKED;
 
@@ -482,6 +497,7 @@ struct lttcomm_consumer_msg {
                         * because the application can be in the tracing for instance.
                         */
                        uint32_t ust_app_uid;
+                       int64_t blocking_timeout;
                        char root_shm_path[PATH_MAX];
                        char shm_path[PATH_MAX];
                } LTTNG_PACKED ask_channel;
@@ -533,6 +549,33 @@ struct lttcomm_consumer_msg {
                struct {
                        uint64_t session_id;
                } LTTNG_PACKED regenerate_metadata;
+               struct {
+                       char pathname[PATH_MAX];
+                       uint32_t metadata; /* This is a metadata channel. */
+                       uint64_t relayd_id; /* Relayd id if apply. */
+                       uint64_t key;
+                       uint64_t new_chunk_id;
+               } LTTNG_PACKED rotate_channel;
+               struct {
+                       char old_path[LTTNG_PATH_MAX];
+                       char new_path[LTTNG_PATH_MAX];
+                       uint64_t relayd_id; /* Relayd id if apply. */
+                       uint64_t session_id;
+                       uint32_t uid;
+                       uint32_t gid;
+               } LTTNG_PACKED rotate_rename;
+               struct {
+                       uint64_t relayd_id;
+                       uint64_t session_id;
+                       uint64_t chunk_id;
+               } LTTNG_PACKED rotate_pending_relay;
+               struct {
+                       char path[LTTNG_PATH_MAX];
+                       uint64_t relayd_id; /* Relayd id if apply. */
+                       uint64_t session_id;
+                       uint32_t uid;
+                       uint32_t gid;
+               } LTTNG_PACKED mkdir;
        } u;
 } LTTNG_PACKED;
 
This page took 0.023664 seconds and 4 git commands to generate.