Allow regenerating the statedump of a running session
[lttng-tools.git] / src / lib / lttng-ctl / lttng-ctl.c
index 8c78e1c199d4a8837b882e573262dad69748bdca..bcd59f0c637979cccb09ce923db97d9146e35508 100644 (file)
@@ -2418,6 +2418,36 @@ int lttng_metadata_regenerate(const char *session_name)
        return lttng_regenerate_metadata(session_name);
 }
 
+/*
+ * Regenerate the statedump of a session.
+ * Return 0 on success, a negative error code on error.
+ */
+int lttng_regenerate_statedump(const char *session_name)
+{
+       int ret;
+       struct lttcomm_session_msg lsm;
+
+       if (!session_name) {
+               ret = -LTTNG_ERR_INVALID;
+               goto end;
+       }
+
+       memset(&lsm, 0, sizeof(lsm));
+       lsm.cmd_type = LTTNG_REGENERATE_STATEDUMP;
+
+       lttng_ctl_copy_string(lsm.session.name, session_name,
+                       sizeof(lsm.session.name));
+
+       ret = lttng_ctl_ask_sessiond(&lsm, NULL);
+       if (ret < 0) {
+               goto end;
+       }
+
+       ret = 0;
+end:
+       return ret;
+}
+
 /*
  * lib constructor.
  */
This page took 0.025318 seconds and 5 git commands to generate.