Implement lttng-save and lttng-load for userspace-probe
[lttng-tools.git] / src / common / mi-lttng-3.0.xsd
CommitLineData
c5e38b74
JR
1<?xml version="1.0" encoding="UTF-8"?>
2<!--
3Copyright (c) 2014 - Oliver Cotte <olivier.cotte@polymtl.ca>
4 - Jonathan Rajotte <jonathan.r.julien@gmail.com>
654f9f5e 5Copyright (c) 2016 - Jérémie Galarneau <jeremie.galarneau@efficios.com>
c5e38b74
JR
6
7Permission is hereby granted, free of charge, to any person obtaining a copy
8of this software and associated documentation files (the "Software"), to deal
9in the Software without restriction, including without limitation the rights
10to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11copies of the Software, and to permit persons to whom the Software is
12furnished to do so, subject to the following conditions:
13
14The above copyright notice and this permission notice shall be included in
15all copies or substantial portions of the Software.
16
17THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
23THE SOFTWARE.
24-->
25<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
a18d9544
JG
26 targetNamespace="https://lttng.org/xml/ns/lttng-mi"
27 xmlns:tns="https://lttng.org/xml/ns/lttng-mi"
654f9f5e 28 elementFormDefault="qualified" version="3.0">
c5e38b74
JR
29
30 <!-- Maps to the uint32_t type -->
31 <xs:simpleType name="uint32_type">
32 <xs:restriction base="xs:integer">
33 <xs:minInclusive value="0" />
34 <xs:maxInclusive value="4294967295" />
35 </xs:restriction>
36 </xs:simpleType>
37
38 <!-- Maps to the uint64_t type -->
39 <xs:simpleType name="uint64_type">
40 <xs:restriction base="xs:integer">
41 <xs:minInclusive value="0" />
42 <xs:maxInclusive value="18446744073709551615" />
43 </xs:restriction>
44 </xs:simpleType>
45
491d1539
MD
46 <!--
47 Maps to the range allowed for blocking timeout: -1 (block
48 forever), 0 (do not block), positive integer value (blocking
49 time in usec) limited by its signed 32-bit representation when
50 converted to msec.
51 -->
52 <xs:simpleType name="blocking_timeout_type">
53 <xs:restriction base="xs:integer">
54 <xs:minInclusive value="-1" />
55 <xs:maxInclusive value="2147483648000" />
56 </xs:restriction>
57 </xs:simpleType>
58
c5e38b74
JR
59 <!-- Maps to the char name[LTTNG_SYMBOL_NAME_LEN] -->
60 <xs:simpleType name="name_type">
61 <xs:restriction base="xs:string">
62 <xs:maxLength value="255" />
63 </xs:restriction>
64 </xs:simpleType>
65
66 <!-- Maps to the lttng_event_type enum -->
67 <xs:simpleType name="event_type_type">
68 <xs:restriction base="xs:string">
69 <xs:enumeration value="ALL" />
70 <xs:enumeration value="TRACEPOINT" />
71 <xs:enumeration value="PROBE" />
72 <xs:enumeration value="FUNCTION" />
73 <xs:enumeration value="FUNCTION_ENTRY" />
74 <xs:enumeration value="NOOP" />
75 <xs:enumeration value="SYSCALL" />
c5e38b74
JR
76 </xs:restriction>
77 </xs:simpleType>
78
79 <!-- Maps to the lttng_event_field_type enum -->
80 <xs:simpleType name="event_field_type_type">
81 <xs:restriction base="xs:string">
82 <xs:enumeration value="OTHER" />
83 <xs:enumeration value="INTEGER" />
84 <xs:enumeration value="ENUM" />
85 <xs:enumeration value="FLOAT" />
86 <xs:enumeration value="STRING" />
87 </xs:restriction>
88 </xs:simpleType>
89
90 <!-- Maps to the lttng_loglevel_type enum -->
91 <xs:simpleType name="loglevel_type">
92 <xs:restriction base="xs:string">
93 <xs:enumeration value="ALL" />
94 <xs:enumeration value="RANGE" />
95 <xs:enumeration value="SINGLE" />
96 <xs:enumeration value="UNKNOWN" />
97 </xs:restriction>
98 </xs:simpleType>
99
c9ffe7f5 100 <!-- Maps to the lttng_event_context_type enum -->
89b72577
JRJ
101 <xs:simpleType name="context_type_type">
102 <xs:restriction base="xs:string">
89b72577
JRJ
103 <xs:enumeration value="PID" />
104 <xs:enumeration value="PROCNAME" />
105 <xs:enumeration value="PRIO" />
106 <xs:enumeration value="NICE" />
107 <xs:enumeration value="VPID" />
108 <xs:enumeration value="TID" />
109 <xs:enumeration value="VTID" />
110 <xs:enumeration value="PPID" />
111 <xs:enumeration value="VPPID" />
112 <xs:enumeration value="PTHREAD_ID" />
113 <xs:enumeration value="HOSTNAME" />
114 <xs:enumeration value="IP" />
a72332c3
JR
115 <xs:enumeration value="INTERRUPTIBLE" />
116 <xs:enumeration value="PREEMPTIBLE" />
117 <xs:enumeration value="NEED_RESCHEDULE" />
118 <xs:enumeration value="MIGRATABLE" />
16c4c991
FD
119 <xs:enumeration value="CALLSTACK_USER" />
120 <xs:enumeration value="CALLSTACK_KERNEL" />
89b72577
JRJ
121 </xs:restriction>
122 </xs:simpleType>
123
c5e38b74
JR
124 <!-- Maps to loglevel_string char * -->
125 <xs:simpleType name="loglevel_string_type">
126 <xs:restriction base="xs:string">
127 <xs:enumeration value="" />
128 <xs:enumeration value="TRACE_EMERG" />
129 <xs:enumeration value="TRACE_ALERT" />
130 <xs:enumeration value="TRACE_CRIT" />
131 <xs:enumeration value="TRACE_ERR" />
132 <xs:enumeration value="TRACE_WARNING" />
133 <xs:enumeration value="TRACE_NOTICE" />
134 <xs:enumeration value="TRACE_INFO" />
135 <xs:enumeration value="TRACE_DEBUG_SYSTEM" />
136 <xs:enumeration value="TRACE_DEBUG_PROGRAM" />
137 <xs:enumeration value="TRACE_DEBUG_PROCESS" />
138 <xs:enumeration value="TRACE_DEBUG_MODULE" />
139 <xs:enumeration value="TRACE_DEBUG_UNIT" />
140 <xs:enumeration value="TRACE_DEBUG_FUNCTION" />
141 <xs:enumeration value="TRACE_DEBUG_LINE" />
142 <xs:enumeration value="TRACE_DEBUG" />
136f2f81
JRJ
143 <xs:enumeration value="JUL_OFF" />
144 <xs:enumeration value="JUL_SEVERE" />
145 <xs:enumeration value="JUL_WARNING" />
146 <xs:enumeration value="JUL_INFO" />
147 <xs:enumeration value="JUL_CONFIG" />
148 <xs:enumeration value="JUL_FINE" />
149 <xs:enumeration value="JUL_FINER" />
150 <xs:enumeration value="JUL_FINEST" />
151 <xs:enumeration value="JUL_ALL" />
e4d12c27
DG
152 <xs:enumeration value="LOG4J_OFF" />
153 <xs:enumeration value="LOG4J_FATAL" />
154 <xs:enumeration value="LOG4J_ERROR" />
155 <xs:enumeration value="LOG4J_WARN" />
156 <xs:enumeration value="LOG4J_INFO" />
157 <xs:enumeration value="LOG4J_DEBUG" />
158 <xs:enumeration value="LOG4J_TRACE" />
159 <xs:enumeration value="LOG4J_ALL" />
0e115563
DG
160 <xs:enumeration value="PYTHON_CRITICAL" />
161 <xs:enumeration value="PYTHON_ERROR" />
162 <xs:enumeration value="PYTHON_WARNING" />
163 <xs:enumeration value="PYTHON_INFO" />
164 <xs:enumeration value="PYTHON_DEBUG" />
165 <xs:enumeration value="PYTHON_NOTSET" />
c5e38b74
JR
166 <xs:enumeration value="UNKNOWN" />
167 </xs:restriction>
168 </xs:simpleType>
169
91c4d516
JG
170 <!-- Maps to enum lttng_rotation_state -->
171 <xs:simpleType name="rotation_state_type">
172 <xs:restriction base="xs:string">
173 <xs:enumeration value="ONGOING" />
174 <xs:enumeration value="COMPLETED" />
175 <xs:enumeration value="EXPIRED" />
176 <xs:enumeration value="ERROR" />
177 </xs:restriction>
178 </xs:simpleType>
179
180 <!-- Maps to enum lttng_trace_archive_location_relay_protocol_type -->
181 <xs:simpleType name="location_relay_protocol_type">
182 <xs:restriction base="xs:string">
183 <xs:enumeration value="TCP" />
184 </xs:restriction>
185 </xs:simpleType>
186
7e66b1b0
JRJ
187 <!-- Maps to the lttng_calibrate_type enum -->
188 <xs:simpleType name="calibrate_type_type">
189 <xs:restriction base="xs:string">
190 <xs:enumeration value="FUNCTION" />
191 </xs:restriction>
192 </xs:simpleType>
193
c5e38b74
JR
194 <!-- Maps to the lttng_event_probe_attr struct -->
195 <xs:complexType name="event_probe_attributes_type">
196 <xs:all>
00440276
JG
197 <xs:element name="address" type="tns:uint64_type" minOccurs="0" />
198 <xs:element name="offset" type="tns:uint64_type" minOccurs="0" />
199 <xs:element name="symbol_name" type="tns:name_type" minOccurs="0" />
c5e38b74
JR
200 </xs:all>
201 </xs:complexType>
202
203 <!-- Maps to the lttng_event_function_attr struct -->
204 <xs:complexType name="event_ftrace_attributes_type">
205 <xs:all>
00440276 206 <xs:element name="symbol_name" type="tns:name_type" />
c5e38b74
JR
207 </xs:all>
208 </xs:complexType>
209
210 <!-- Maps to per event type configuration -->
211 <xs:complexType name="event_attributes_type">
212 <xs:choice>
00440276
JG
213 <xs:element name="probe_attributes" type="tns:event_probe_attributes_type" />
214 <xs:element name="function_attributes" type="tns:event_ftrace_attributes_type" />
c5e38b74
JR
215 </xs:choice>
216 </xs:complexType>
217
f4a088f7 218 <!-- Maps to exclusion type -->
89476427
JRJ
219 <xs:complexType name="event_exclusion_list_type">
220 <xs:sequence>
221 <xs:element name="exclusion" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
222 </xs:sequence>
223 </xs:complexType>
224
c5e38b74
JR
225 <!-- Maps to lttng_event struct -->
226 <xs:complexType name="event_type">
227 <xs:all>
00440276
JG
228 <xs:element name="type" type="tns:event_type_type" default="TRACEPOINT" minOccurs="0" />
229 <xs:element name="name" type="tns:name_type" minOccurs="0" />
230 <xs:element name="loglevel_type" type="tns:loglevel_type" default="ALL" minOccurs="0" />
231 <xs:element name="loglevel" type="tns:loglevel_string_type" default="" minOccurs="0" />
c5e38b74 232 <xs:element name="enabled" type="xs:boolean" default="false" minOccurs="0" />
7b4aa11d 233 <xs:element name="filter_expression" type="xs:string" minOccurs="0" />
00440276
JG
234 <xs:element name="exclusions" type="tns:event_exclusion_list_type" minOccurs="0"/>
235 <xs:element name="attributes" type="tns:event_attributes_type" minOccurs="0" />
236 <xs:element name="event_fields" type="tns:event_fields_type" minOccurs="0" />
89476427 237 <xs:element name="success" type="xs:boolean" minOccurs="0" />
c5e38b74
JR
238 </xs:all>
239 </xs:complexType>
240
241 <!-- Maps to mi_lttng_version struct -->
242 <xs:complexType name="version_type">
243 <xs:all>
00440276
JG
244 <xs:element name="name" type="tns:name_type" />
245 <xs:element name="string" type="tns:name_type" />
246 <xs:element name="major" type="tns:uint32_type" />
c5e38b74 247 <xs:element name="url" type="xs:string" />
00440276 248 <xs:element name="minor" type="tns:uint32_type" />
314d5222 249 <xs:element name="commit" type="xs:string" />
c5e38b74 250 <xs:element name="license" type="xs:string" />
00440276 251 <xs:element name="patchLevel" type="tns:uint32_type" />
c5e38b74
JR
252 <xs:element name="description" type="xs:string" />
253 </xs:all>
254 </xs:complexType>
255
f4a088f7 256 <!-- Maps to an array of event -->
c5e38b74
JR
257 <xs:complexType name="event_list_type">
258 <xs:sequence>
00440276 259 <xs:element name="event" type="tns:event_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
260 </xs:sequence>
261 </xs:complexType>
262
263 <!-- Maps to the lttng_domain_type enum -->
264 <xs:simpleType name="domain_type_type">
265 <xs:restriction base="xs:string">
266 <xs:enumeration value="KERNEL"/>
267 <xs:enumeration value="UST"/>
268 <xs:enumeration value="JUL"/>
e4d12c27 269 <xs:enumeration value="LOG4J"/>
0e115563 270 <xs:enumeration value="PYTHON"/>
c5e38b74
JR
271 </xs:restriction>
272 </xs:simpleType>
273
274 <!-- Maps to the lttng_buffer_type enum -->
275 <xs:simpleType name="domain_buffer_type">
276 <xs:restriction base="xs:string">
277 <xs:enumeration value="PER_PID"/>
278 <xs:enumeration value="PER_UID"/>
279 <xs:enumeration value="GLOBAL"/>
280 </xs:restriction>
281 </xs:simpleType>
282
f4a088f7 283 <!-- Maps to the type mode of a channel -->
c5e38b74
JR
284 <xs:simpleType name="channel_overwrite_mode_type">
285 <xs:restriction base="xs:string">
286 <xs:enumeration value="DISCARD" />
287 <xs:enumeration value="OVERWRITE" />
288 </xs:restriction>
289 </xs:simpleType>
290
291 <!-- Maps to the lttng_event_output enum -->
292 <xs:simpleType name="event_output_type">
293 <xs:restriction base="xs:string">
294 <xs:enumeration value="SPLICE" />
295 <xs:enumeration value="MMAP" />
296 </xs:restriction>
297 </xs:simpleType>
298
bf239d4c
JR
299 <!-- map to a pid -->
300 <xs:complexType name="pid_type">
c5e38b74 301 <xs:all>
bf239d4c 302 <xs:element name="id" type="xs:int" />
00440276
JG
303 <xs:element name="name" type="tns:name_type" />
304 <xs:element name="events" type="tns:event_list_type" minOccurs="0" />
c5e38b74
JR
305 </xs:all>
306 </xs:complexType>
307
bf239d4c 308 <!-- maps to an array of pid -->
c5e38b74
JR
309 <xs:complexType name="pids_type">
310 <xs:sequence>
00440276 311 <xs:element name="pid" type="tns:pid_type" minOccurs="0" maxOccurs="unbounded" />
c12fcec9
JG
312 </xs:sequence>
313 </xs:complexType>
314
315 <xs:simpleType name="pidbyint">
316 <xs:restriction base="xs:integer">
317 <xs:minInclusive value="0"/>
318 <xs:maxInclusive value="4294967295" />
319 </xs:restriction>
320 </xs:simpleType>
321
322 <xs:simpleType name="pidwildcard">
323 <xs:restriction base="xs:string">
324 <xs:enumeration value="*"/>
325 </xs:restriction>
326 </xs:simpleType>
327
328 <xs:complexType name="pid_target_type">
329 <xs:all>
330 <xs:element name="pid">
331 <xs:simpleType>
00440276 332 <xs:union memberTypes="tns:pidbyint tns:pidwildcard" />
c12fcec9
JG
333 </xs:simpleType>
334 </xs:element>
335 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
336 </xs:all>
337 </xs:complexType>
338
339 <!-- Maps to a list of pid_targets-->
340 <xs:complexType name="targets_type">
341 <xs:sequence>
342 <xs:choice>
00440276 343 <xs:element name="pid_target" type="tns:pid_target_type" minOccurs="0" maxOccurs="unbounded"/>
c12fcec9
JG
344 </xs:choice>
345 </xs:sequence>
346 </xs:complexType>
347
348 <!-- Maps to a pid_tracker-->
349 <xs:complexType name="pid_tracker_type">
350 <xs:all>
00440276 351 <xs:element name="targets" type="tns:targets_type" />
c12fcec9
JG
352 </xs:all>
353 </xs:complexType>
354
355 <!-- Maps to a list of trackers-->
356 <xs:complexType name="trackers_type">
357 <xs:sequence minOccurs="0" maxOccurs="unbounded">
00440276 358 <xs:element name="pid_tracker" type="tns:pid_tracker_type" maxOccurs="1" />
c5e38b74
JR
359 </xs:sequence>
360 </xs:complexType>
361
362 <!-- Maps to struct lttng_domain and contains channels -->
363 <xs:complexType name="domain_type">
364 <xs:all>
00440276
JG
365 <xs:element name="type" type="tns:domain_type_type" />
366 <xs:element name="buffer_type" type="tns:domain_buffer_type" />
367 <xs:element name="pids" type="tns:pids_type" minOccurs="0" />
368 <xs:element name="channels" type="tns:channels_type" minOccurs="0" />
369 <xs:element name="events" type="tns:event_list_type" minOccurs="0" />
370 <xs:element name="trackers" type="tns:trackers_type" minOccurs="0" />
c5e38b74
JR
371 </xs:all>
372 </xs:complexType>
373
374 <!-- Maps to struct lttng_channel -->
375 <xs:complexType name="channel_type">
376 <xs:all>
00440276 377 <xs:element name="name" type="tns:name_type" />
f4a088f7 378 <xs:element name="enabled" type="xs:boolean" default="true" minOccurs="0" />
00440276
JG
379 <xs:element name="attributes" type="tns:channel_attributes_type" minOccurs="0" />
380 <xs:element name="events" type="tns:event_list_type" minOccurs="0" />
9618049b 381 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
c5e38b74
JR
382 </xs:all>
383 </xs:complexType>
384
385 <!-- Maps to struct lttng_channel_attr -->
386 <xs:complexType name="channel_attributes_type">
387 <xs:all>
00440276
JG
388 <xs:element name="overwrite_mode" type="tns:channel_overwrite_mode_type" default="DISCARD" minOccurs="0" />
389 <xs:element name="subbuffer_size" type="tns:uint64_type" minOccurs="0" /> <!-- bytes -->
390 <xs:element name="subbuffer_count" type="tns:uint64_type" default="4" minOccurs="0" />
391 <xs:element name="switch_timer_interval" type="tns:uint32_type" default="0" minOccurs="0" /> <!-- usec -->
392 <xs:element name="read_timer_interval" type="tns:uint32_type" /> <!-- usec -->
393 <xs:element name="output_type" type="tns:event_output_type" />
394 <xs:element name="tracefile_size" type="tns:uint64_type" default="0" minOccurs="0" /> <!-- bytes -->
395 <xs:element name="tracefile_count" type="tns:uint64_type" default="0" minOccurs="0" />
396 <xs:element name="live_timer_interval" type="tns:uint32_type" default="0" minOccurs="0" /> <!-- usec -->
fb83fe64
JD
397 <xs:element name="discarded_events" type="tns:uint64_type" default="0" minOccurs="0" />
398 <xs:element name="lost_packets" type="tns:uint64_type" default="0" minOccurs="0" />
cf0bcb51 399 <xs:element name="monitor_timer_interval" type="tns:uint64_type" default="0" minOccurs="0" />
491d1539 400 <xs:element name="blocking_timeout" type="tns:blocking_timeout_type" default="0" minOccurs="0" />
c5e38b74
JR
401 </xs:all>
402 </xs:complexType>
403
50534d6f
JRJ
404 <!-- Maps to struct lttng_snapshot_output -->
405 <xs:complexType name="snapshot_type">
406 <xs:all>
00440276
JG
407 <xs:element name="id" type="tns:uint32_type" minOccurs="0" />
408 <xs:element name="max_size" type="tns:uint64_type" minOccurs="0" />
409 <xs:element name="name" type="tns:name_type" minOccurs="0" />
410 <xs:element name="session_name" type="tns:name_type" minOccurs="0" />
dd89693f
JR
411 <xs:element name="ctrl_url" type="xs:string" minOccurs="0" />
412 <xs:element name="data_url" type="xs:string" minOccurs="0" />
50534d6f
JRJ
413 </xs:all>
414 </xs:complexType>
415
416 <xs:complexType name="snapshots_type">
417 <xs:sequence>
00440276 418 <xs:element name="snapshot" type="tns:snapshot_type" minOccurs="0" maxOccurs="unbounded" />
50534d6f
JRJ
419 </xs:sequence>
420 </xs:complexType>
421
66ea93b1
JG
422 <xs:complexType name="periodic_rotation_schedule_type">
423 <xs:all>
424 <xs:element name="time_us" type="tns:uint64_type" minOccurs="0" />
425 </xs:all>
426 </xs:complexType>
427
428 <xs:complexType name="size_threshold_rotation_schedule_type">
429 <xs:all>
430 <xs:element name="bytes" type="tns:uint64_type" minOccurs="0" />
431 </xs:all>
432 </xs:complexType>
433
434 <xs:complexType name="rotation_schedule_type">
435 <xs:sequence>
436 <xs:choice maxOccurs="unbounded">
437 <xs:element name="periodic" type="tns:periodic_rotation_schedule_type" maxOccurs="unbounded" />
438 <xs:element name="size_threshold" type="tns:size_threshold_rotation_schedule_type" maxOccurs="unbounded" />
439 </xs:choice>
440 </xs:sequence>
441 </xs:complexType>
442
c5e38b74
JR
443 <xs:complexType name="channels_type">
444 <xs:sequence>
00440276 445 <xs:element name="channel" type="tns:channel_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
446 </xs:sequence>
447 </xs:complexType>
448
f4a088f7 449 <!-- Maps to a lttng_session -->
c5e38b74
JR
450 <xs:complexType name="session_type">
451 <xs:all>
00440276 452 <xs:element name="name" type="tns:name_type" />
dd89693f 453 <xs:element name="path" type="xs:string" minOccurs="0" />
1734c658 454 <xs:element name="enabled" type="xs:boolean" default="false" minOccurs="0" />
00440276
JG
455 <xs:element name="snapshot_mode" type="tns:uint32_type" minOccurs="0" />
456 <xs:element name="live_timer_interval" type="tns:uint32_type" minOccurs="0" />
457 <xs:element name="channels" type="tns:channels_type" minOccurs="0" />
458 <xs:element name="domains" type="tns:domains_type" minOccurs="0" />
459 <xs:element name="snapshots" type="tns:snapshots_type" minOccurs="0" />
66ea93b1 460 <xs:element name="rotation_schedules" type="tns:rotation_schedule_type" minOccurs="0" />
c5e38b74
JR
461 </xs:all>
462 </xs:complexType>
463
f4a088f7 464 <!-- Maps to a lttng_event_field -->
c5e38b74
JR
465 <xs:complexType name="event_field_type">
466 <xs:all>
00440276
JG
467 <xs:element name="name" type="tns:name_type" />
468 <xs:element name="type" type="tns:event_field_type_type" />
f4a088f7 469 <xs:element name="nowrite" type="xs:int" />
c5e38b74
JR
470 </xs:all>
471 </xs:complexType>
472
17c4550a 473 <!-- Maps to the save command -->
1734c658
JRJ
474 <xs:complexType name="save_type">
475 <xs:all>
00440276 476 <xs:element name="session" type="tns:session_type" />
dd89693f 477 <xs:element name="path" type="xs:string" />
1734c658
JRJ
478 </xs:all>
479 </xs:complexType>
480
17c4550a 481 <!-- Maps to the load command -->
1734c658
JRJ
482 <xs:complexType name="load_type">
483 <xs:all>
00440276 484 <xs:element name="session" type="tns:session_type" />
dd89693f 485 <xs:element name="path" type="xs:string" />
23cb2d55
JR
486 <xs:element name="overrides" type="tns:overrides_type" />
487 </xs:all>
488 </xs:complexType>
489
490 <!-- Maps to the override parameters of the load command -->
491 <xs:complexType name="overrides_type">
492 <xs:all>
493 <xs:element name="name" type="tns:name_type" minOccurs="0" />
494 <xs:element name="url" type="xs:string" minOccurs="0" />
1734c658
JRJ
495 </xs:all>
496 </xs:complexType>
c5e38b74 497
7e66b1b0
JRJ
498 <!-- Maps to struct lttng_calibrate -->
499 <xs:complexType name="calibrate_type">
500 <xs:all>
00440276 501 <xs:element name="type" type="tns:calibrate_type_type" />
7e66b1b0
JRJ
502 </xs:all>
503 </xs:complexType>
504
17c4550a 505 <!-- Maps to lttng_event_perf_counter_ctx -->
89b72577
JRJ
506 <xs:complexType name="perf_counter_context_type">
507 <xs:all>
8d40c39b
JG
508 <xs:element name="type" type="tns:uint32_type" />
509 <xs:element name="config" type="tns:uint64_type" />
510 <xs:element name="name" type="tns:name_type" />
89b72577
JRJ
511 </xs:all>
512 </xs:complexType>
513
8d40c39b
JG
514 <!-- Maps to app_ctx -->
515 <xs:complexType name="app_context_type">
89b72577 516 <xs:all>
8d40c39b
JG
517 <xs:element name="provider_name" type="xs:string"/>
518 <xs:element name="ctx_name" type="xs:string"/>
89b72577
JRJ
519 </xs:all>
520 </xs:complexType>
521
8d40c39b
JG
522 <!-- Maps to lttng_event_context -->
523 <xs:complexType name="context_type">
59deec0c
JR
524 <xs:sequence>
525 <xs:choice>
526 <xs:element name="type" type="tns:context_type_type"/>
527 <xs:element name="perf" type="tns:perf_counter_context_type"/>
528 <xs:element name="app" type="tns:app_context_type"/>
529 </xs:choice>
530 <xs:element name="symbol" type="xs:string" minOccurs="0" />
531 </xs:sequence>
8d40c39b
JG
532 </xs:complexType>
533
f4a088f7 534 <!-- Maps to an array of domain -->
c5e38b74
JR
535 <xs:complexType name="domains_type">
536 <xs:sequence>
00440276 537 <xs:element name="domain" type="tns:domain_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
538 </xs:sequence>
539 </xs:complexType>
540
f4a088f7 541 <!-- Maps to an array of session -->
c5e38b74
JR
542 <xs:complexType name="sessions_type">
543 <xs:sequence>
00440276 544 <xs:element name="session" type="tns:session_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
545 </xs:sequence>
546 </xs:complexType>
547
f4a088f7 548 <!-- Maps to an array of event_field -->
c5e38b74
JR
549 <xs:complexType name="event_fields_type">
550 <xs:sequence>
00440276 551 <xs:element name="event_field" type="tns:event_field_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
552 </xs:sequence>
553 </xs:complexType>
554
f4a088f7 555 <!-- Maps to an array of context -->
89b72577
JRJ
556 <xs:complexType name="contexts_type">
557 <xs:sequence>
00440276 558 <xs:element name="context" type="tns:context_type" minOccurs="0" maxOccurs="unbounded" />
89b72577
JRJ
559 </xs:sequence>
560 </xs:complexType>
561
54897b57 562 <!-- Maps to an action during snapshot command -->
d0adede2 563 <xs:complexType name="snapshot_cmd_type">
50534d6f 564 <xs:sequence>
d0adede2 565 <xs:element name="name" type="tns:snapshot_action_type" minOccurs="0" />
00440276 566 <xs:element name="output" type="tns:output_type" minOccurs="0" />
50534d6f
JRJ
567 </xs:sequence>
568 </xs:complexType>
569
570 <!-- Type of snapshot commands -->
d0adede2 571 <xs:simpleType name="snapshot_action_type">
50534d6f 572 <xs:restriction base="xs:string">
f4a088f7
JRJ
573 <xs:enumeration value="list-output" />
574 <xs:enumeration value="del-output" />
575 <xs:enumeration value="add-output" />
576 <xs:enumeration value="record-output" />
50534d6f
JRJ
577 </xs:restriction>
578 </xs:simpleType>
579
54897b57 580 <!-- Maps to an action during metadata command -->
d0adede2 581 <xs:complexType name="metadata_cmd_type">
54897b57 582 <xs:sequence>
d0adede2 583 <xs:element name="name" type="tns:metadata_action_type" minOccurs="0" />
54897b57
JD
584 </xs:sequence>
585 </xs:complexType>
586
587 <!-- Type of metadata commands -->
d0adede2 588 <xs:simpleType name="metadata_action_type">
54897b57
JD
589 <xs:restriction base="xs:string">
590 <xs:enumeration value="regenerate" />
591 </xs:restriction>
592 </xs:simpleType>
593
d0adede2
JG
594 <!-- Type of regenerate commands -->
595 <xs:simpleType name="regenerate_action_type">
596 <xs:restriction base="xs:string">
597 <xs:enumeration value="metadata" />
598 <xs:enumeration value="statedump" />
599 </xs:restriction>
600 </xs:simpleType>
601
602 <!-- Type of regenerate command -->
603 <xs:complexType name="regenerate_cmd_type">
604 <xs:sequence>
605 <xs:element name="name" type="tns:regenerate_action_type" minOccurs="0" />
606 </xs:sequence>
607 </xs:complexType>
608
91c4d516
JG
609 <xs:complexType name="local_location_type">
610 <xs:sequence>
611 <xs:element name="absolute_path" type="xs:string" minOccurs="1" />
612 </xs:sequence>
613 </xs:complexType>
614
615 <xs:complexType name="relay_location_type">
616 <xs:sequence>
617 <xs:element name="host" type="xs:string" minOccurs="1" />
618 <xs:element name="control_port" type="xs:int" minOccurs="0" />
619 <xs:element name="data_port" type="xs:int" minOccurs="0" />
620 <xs:element name="protocol" type="tns:location_relay_protocol_type" minOccurs="1" />
621 <xs:element name="relative_path" type="xs:string" minOccurs="0" />
622 </xs:sequence>
623 </xs:complexType>
624
625 <xs:complexType name="location_type">
626 <xs:choice>
627 <xs:element name="local" type="tns:local_location_type" minOccurs="0" />
628 <xs:element name="relay" type="tns:relay_location_type" minOccurs="0" />
629 </xs:choice>
630 </xs:complexType>
631
79344fee 632 <!-- Maps to the rotate command -->
91c4d516
JG
633 <xs:complexType name="rotate_type">
634 <xs:sequence>
635 <xs:element name="session_name" type="tns:name_type" minOccurs="1" />
636 <xs:element name="state" type="tns:rotation_state_type" minOccurs="1" />
637 <xs:element name="location" type="tns:location_type" minOccurs="0" />
638 </xs:sequence>
79344fee
JG
639 </xs:complexType>
640
66ea93b1 641 <xs:complexType name="rotation_schedule_result_type">
79344fee 642 <xs:sequence>
66ea93b1
JG
643 <xs:element name="rotation_schedule" type="tns:rotation_schedule_type" minOccurs="1" />
644 <xs:element name="success" type="xs:boolean" minOccurs="1"/>
79344fee
JG
645 </xs:sequence>
646 </xs:complexType>
647
66ea93b1
JG
648 <!-- Maps to the enable/disable-rotation commands -->
649 <xs:complexType name="rotation_schedule_cmd_type">
79344fee 650 <xs:sequence>
66ea93b1
JG
651 <xs:element name="session_name" type="tns:name_type" minOccurs="1" />
652 <xs:element name="rotation_schedule_result" type="tns:rotation_schedule_result_type" minOccurs="1" maxOccurs="unbounded" />
79344fee
JG
653 </xs:sequence>
654 </xs:complexType>
655
c5e38b74
JR
656 <xs:complexType name="output_type">
657 <xs:choice>
00440276
JG
658 <xs:element name="domains" type="tns:domains_type" minOccurs="0" />
659 <xs:element name="sessions" type="tns:sessions_type" minOccurs="0" />
660 <xs:element name="session" type="tns:session_type" minOccurs="0" />
d0adede2 661 <xs:element name="snapshot_action" type="tns:snapshot_cmd_type" minOccurs="0" />
00440276
JG
662 <xs:element name="snapshot" type="tns:snapshot_type" minOccurs="0" />
663 <xs:element name="version" type="tns:version_type" minOccurs="0" />
664 <xs:element name="save" type="tns:save_type" minOccurs="0" />
665 <xs:element name="load" type="tns:load_type" minOccurs="0" />
666 <xs:element name="calibrate" type="tns:calibrate_type" minOccurs="0" />
667 <xs:element name="contexts" type="tns:contexts_type" minOccurs="0" />
668 <xs:element name="channels" type="tns:channels_type" minOccurs="0" />
669 <xs:element name="events" type="tns:event_list_type" minOccurs="0" />
670 <xs:element name="channel" type="tns:channel_type" minOccurs="0" />
671 <xs:element name="targets" type="tns:targets_type" minOccurs="0" />
d0adede2
JG
672 <xs:element name="metadata_action" type="tns:metadata_cmd_type" minOccurs="0" />
673 <xs:element name="regenerate_action" type="tns:regenerate_cmd_type" minOccurs="0" />
91c4d516 674 <xs:element name="rotation" type="tns:rotate_type" minOccurs="0" />
66ea93b1 675 <xs:element name="rotation_schedule_results" type="tns:rotation_schedule_cmd_type" minOccurs="0" />
c5e38b74
JR
676 </xs:choice>
677 </xs:complexType>
678
679 <!-- Maps to the mi_lttng commands -->
680 <xs:simpleType name="command_string_type">
681 <xs:restriction base="xs:string">
37d03ff7 682 <xs:enumeration value="create" />
c5e38b74 683 <xs:enumeration value="list" />
50534d6f 684 <xs:enumeration value="snapshot" />
c5e38b74 685 <xs:enumeration value="version" />
1734c658
JRJ
686 <xs:enumeration value="save" />
687 <xs:enumeration value="load" />
1cfc0bc8 688 <xs:enumeration value="start" />
e5b83100 689 <xs:enumeration value="stop" />
65f25c66 690 <xs:enumeration value="destroy" />
7e66b1b0 691 <xs:enumeration value="calibrate" />
89b72577 692 <xs:enumeration value="add-context" />
acc09215 693 <xs:enumeration value="enable-channel" />
89476427 694 <xs:enumeration value="enable-event" />
ce91cd0b 695 <xs:enumeration value="set-session" />
e4d484a5 696 <xs:enumeration value="disable-event" />
50534d6f 697 <xs:enumeration value="disable-channel" />
c12fcec9
JG
698 <xs:enumeration value="track" />
699 <xs:enumeration value="untrack" />
54897b57 700 <xs:enumeration value="metadata" />
d0adede2 701 <xs:enumeration value="regenerate" />
d68c9a04 702 <xs:enumeration value="rotate" />
79344fee
JG
703 <xs:enumeration value="enable-rotation" />
704 <xs:enumeration value="disable-rotation" />
c5e38b74
JR
705 </xs:restriction>
706 </xs:simpleType>
707
708 <xs:element name="command">
709 <xs:complexType>
710 <xs:all>
00440276
JG
711 <xs:element name="name" type="tns:command_string_type" maxOccurs="1" />
712 <xs:element name="output" type="tns:output_type" maxOccurs="1" />
1734c658 713 <xs:element name="success" type="xs:boolean" minOccurs="0" maxOccurs="1" />
c5e38b74 714 </xs:all>
8a7db2af 715 <xs:attribute name="schemaVersion" type="xs:string" use="required"/>
c5e38b74
JR
716 </xs:complexType>
717 </xs:element>
718</xs:schema>
This page took 0.069438 seconds and 4 git commands to generate.