rotation-api: pass session name explicitly
[lttng-tools.git] / src / common / mi-lttng.c
index a15bde4e3fad440f2455745fc2cdb17aa6dc803e..e8236d841300650a4f8b68b92a8dbf6e6ac5416e 100644 (file)
@@ -36,7 +36,7 @@ LTTNG_HIDDEN const char * const mi_lttng_w3_schema_uri = "http://www.w3.org/2001
 LTTNG_HIDDEN const char * const mi_lttng_schema_location = "xsi:schemaLocation";
 LTTNG_HIDDEN const char * const mi_lttng_schema_location_uri =
        DEFAULT_LTTNG_MI_NAMESPACE " "
-       "http://lttng.org/xml/schemas/lttng-mi/" XSTR(MI_SCHEMA_MAJOR_VERSION)
+       "https://lttng.org/xml/schemas/lttng-mi/" XSTR(MI_SCHEMA_MAJOR_VERSION)
        "/lttng-mi-" XSTR(MI_SCHEMA_MAJOR_VERSION) "."
        XSTR(MI_SCHEMA_MINOR_VERSION) ".xsd";
 LTTNG_HIDDEN const char * const mi_lttng_schema_version = "schemaVersion";
@@ -74,6 +74,9 @@ 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";
+const char * const mi_lttng_element_command_enable_rotation = "enable-rotation";
+const char * const mi_lttng_element_command_disable_rotation = "disable-rotation";
 
 /* Strings related to version command */
 const char * const mi_lttng_element_version = "version";
@@ -101,6 +104,8 @@ const char * const mi_lttng_element_save = "save";
 
 /* Strings related to load command */
 const char * const mi_lttng_element_load = "load";
+LTTNG_HIDDEN const char * const mi_lttng_element_load_overrides = "overrides";
+LTTNG_HIDDEN const char * const mi_lttng_element_load_override_url = "url";
 
 /* General elements of mi_lttng */
 const char * const mi_lttng_element_empty = "";
@@ -177,6 +182,17 @@ 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";
+LTTNG_HIDDEN const char * const mi_lttng_element_rotation_schedule = "rotation_schedule";
+
+/* String related to add-context command */
+LTTNG_HIDDEN const char * const mi_lttng_element_context_symbol = "symbol";
+
 /* 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;
@@ -373,6 +389,18 @@ 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;
+       case LTTNG_EVENT_CONTEXT_CALLSTACK_USER:
+               return config_event_context_callstack_user;
+       case LTTNG_EVENT_CONTEXT_CALLSTACK_KERNEL:
+               return config_event_context_callstack_kernel;
        default:
                return NULL;
        }
@@ -860,7 +888,8 @@ int mi_lttng_channel_attr(struct mi_writer *writer,
        int ret = 0;
        struct lttng_channel *chan = caa_container_of(attr,
                        struct lttng_channel, attr);
-       uint64_t discarded_events, lost_packets;
+       uint64_t discarded_events, lost_packets, monitor_timer_interval;
+       int64_t blocking_timeout;
 
        assert(attr);
 
@@ -874,6 +903,18 @@ int mi_lttng_channel_attr(struct mi_writer *writer,
                goto end;
        }
 
+       ret = lttng_channel_get_monitor_timer_interval(chan,
+                       &monitor_timer_interval);
+       if (ret) {
+               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) {
@@ -920,6 +961,22 @@ int mi_lttng_channel_attr(struct mi_writer *writer,
                goto end;
        }
 
+       /* Monitor timer interval in usec */
+       ret = mi_lttng_writer_write_element_unsigned_int(writer,
+               config_element_monitor_timer_interval,
+               monitor_timer_interval);
+       if (ret) {
+               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.025273 seconds and 5 git commands to generate.