lttng rotate command
[lttng-tools.git] / src / common / mi-lttng.c
index 197add2d470518bf0e18f4f2ecc16320d8a88265..21cf78693b8ac44b2934c2876731bb7a7cdbffd7 100644 (file)
@@ -74,6 +74,7 @@ const char * const mi_lttng_element_command_success = "success";
 const char * const mi_lttng_element_command_track = "track";
 const char * const mi_lttng_element_command_untrack = "untrack";
 const char * const mi_lttng_element_command_version = "version";
+const char * const mi_lttng_element_command_rotate = "rotate";
 
 /* Strings related to version command */
 const char * const mi_lttng_element_version = "version";
@@ -179,6 +180,13 @@ const char * const mi_lttng_element_snapshots = "snapshots";
 /* String related to track/untrack command */
 const char * const mi_lttng_element_track_untrack_all_wildcard = "*";
 
+LTTNG_HIDDEN const char * const mi_lttng_element_session_name = "session_name";
+
+/* String related to rotate command */
+LTTNG_HIDDEN const char * const mi_lttng_element_rotation = "rotation";
+LTTNG_HIDDEN const char * const mi_lttng_element_rotations = "rotations";
+LTTNG_HIDDEN const char * const mi_lttng_element_rotate_status = "status";
+
 /* Deprecated symbols preserved for ABI compatibility. */
 const char * const mi_lttng_context_type_perf_counter;
 const char * const mi_lttng_context_type_perf_cpu_counter;
@@ -375,6 +383,14 @@ const char *mi_lttng_event_contexttype_string(enum lttng_event_context_type val)
                return config_event_context_hostname;
        case LTTNG_EVENT_CONTEXT_IP:
                return config_event_context_ip;
+       case LTTNG_EVENT_CONTEXT_INTERRUPTIBLE:
+               return config_event_context_interruptible;
+       case LTTNG_EVENT_CONTEXT_PREEMPTIBLE:
+               return config_event_context_preemptible;
+       case LTTNG_EVENT_CONTEXT_NEED_RESCHEDULE:
+               return config_event_context_need_reschedule;
+       case LTTNG_EVENT_CONTEXT_MIGRATABLE:
+               return config_event_context_migratable;
        default:
                return NULL;
        }
@@ -863,6 +879,7 @@ int mi_lttng_channel_attr(struct mi_writer *writer,
        struct lttng_channel *chan = caa_container_of(attr,
                        struct lttng_channel, attr);
        uint64_t discarded_events, lost_packets, monitor_timer_interval;
+       int64_t blocking_timeout;
 
        assert(attr);
 
@@ -882,6 +899,12 @@ int mi_lttng_channel_attr(struct mi_writer *writer,
                goto end;
        }
 
+       ret = lttng_channel_get_blocking_timeout(chan,
+                       &blocking_timeout);
+       if (ret) {
+               goto end;
+       }
+
        /* Opening Attributes */
        ret = mi_lttng_writer_open_element(writer, config_element_attributes);
        if (ret) {
@@ -936,6 +959,14 @@ int mi_lttng_channel_attr(struct mi_writer *writer,
                goto end;
        }
 
+       /* Retry timeout in usec */
+       ret = mi_lttng_writer_write_element_signed_int(writer,
+               config_element_blocking_timeout,
+               blocking_timeout);
+       if (ret) {
+               goto end;
+       }
+
        /* Event output */
        ret = mi_lttng_writer_write_element_string(writer,
                config_element_output_type,
This page took 0.023655 seconds and 4 git commands to generate.