return ret;
}
+/*
+ * List the rotate settings (timer/size if any).
+ */
+static int list_rotate_settings(const char *session_name)
+{
+ int ret;
+ uint64_t size, timer;
+
+ ret = lttng_rotation_schedule_get_timer_period(session_name, &timer);
+ if (ret) {
+ goto end;
+ }
+
+ ret = lttng_rotation_schedule_get_size(session_name, &size);
+ if (ret) {
+ goto end;
+ }
+
+ if (!timer && !size) {
+ ret = 0;
+ goto end;
+ }
+
+ _MSG("Automatic rotation schedule settings:\n");
+
+ if (timer) {
+ _MSG(" timer period: %" PRIu64" µs\n", timer);
+ if (lttng_opt_mi) {
+ ret = mi_lttng_writer_write_element_unsigned_int(writer,
+ config_element_rotation_timer_interval, timer);
+ if (ret) {
+ goto end;
+ }
+ }
+ }
+ if (size) {
+ _MSG(" size threshold: %" PRIu64" bytes\n", size);
+ if (lttng_opt_mi) {
+ ret = mi_lttng_writer_write_element_unsigned_int(writer,
+ config_element_rotation_size, size);
+ if (ret) {
+ goto end;
+ }
+ }
+ }
+ _MSG("\n");
+
+end:
+ return ret;
+}
+
/*
* Machine interface
* Find the session with session_name as name
int cmd_list(int argc, const char **argv)
{
int opt, ret = CMD_SUCCESS;
- const char *session_name;
+ const char *session_name, *leftover = NULL;
static poptContext pc;
struct lttng_domain domain;
struct lttng_domain *domains = NULL;
session_name = poptGetArg(pc);
DBG2("Session name: %s", session_name);
+ leftover = poptGetArg(pc);
+ if (leftover) {
+ ERR("Unknown argument: %s", leftover);
+ ret = CMD_ERROR;
+ goto end;
+ }
+
if (opt_kernel) {
domain.type = LTTNG_DOMAIN_KERNEL;
} else if (opt_userspace) {
goto end;
}
+ ret = list_rotate_settings(session_name);
+ if (ret) {
+ goto end;
+ }
+
/* Domain listing */
if (opt_domain) {
ret = list_domains(session_name);