Error early on invalid tracker type for UST domain
[lttng-tools.git] / src / common / mi-lttng-4.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"
01fac814 28 elementFormDefault="qualified" version="4.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" />
5a1c0a75 76 <xs:enumeration value="USERSPACE_PROBE" />
c5e38b74
JR
77 </xs:restriction>
78 </xs:simpleType>
79
80 <!-- Maps to the lttng_event_field_type enum -->
81 <xs:simpleType name="event_field_type_type">
82 <xs:restriction base="xs:string">
83 <xs:enumeration value="OTHER" />
84 <xs:enumeration value="INTEGER" />
85 <xs:enumeration value="ENUM" />
86 <xs:enumeration value="FLOAT" />
87 <xs:enumeration value="STRING" />
88 </xs:restriction>
89 </xs:simpleType>
90
91 <!-- Maps to the lttng_loglevel_type enum -->
92 <xs:simpleType name="loglevel_type">
93 <xs:restriction base="xs:string">
94 <xs:enumeration value="ALL" />
95 <xs:enumeration value="RANGE" />
96 <xs:enumeration value="SINGLE" />
97 <xs:enumeration value="UNKNOWN" />
98 </xs:restriction>
99 </xs:simpleType>
100
c9ffe7f5 101 <!-- Maps to the lttng_event_context_type enum -->
89b72577
JRJ
102 <xs:simpleType name="context_type_type">
103 <xs:restriction base="xs:string">
89b72577
JRJ
104 <xs:enumeration value="PID" />
105 <xs:enumeration value="PROCNAME" />
106 <xs:enumeration value="PRIO" />
107 <xs:enumeration value="NICE" />
108 <xs:enumeration value="VPID" />
109 <xs:enumeration value="TID" />
110 <xs:enumeration value="VTID" />
111 <xs:enumeration value="PPID" />
112 <xs:enumeration value="VPPID" />
113 <xs:enumeration value="PTHREAD_ID" />
114 <xs:enumeration value="HOSTNAME" />
115 <xs:enumeration value="IP" />
a72332c3
JR
116 <xs:enumeration value="INTERRUPTIBLE" />
117 <xs:enumeration value="PREEMPTIBLE" />
118 <xs:enumeration value="NEED_RESCHEDULE" />
119 <xs:enumeration value="MIGRATABLE" />
16c4c991
FD
120 <xs:enumeration value="CALLSTACK_USER" />
121 <xs:enumeration value="CALLSTACK_KERNEL" />
65ae1ae9
JR
122 <xs:enumeration value="CGROUP_NS" />
123 <xs:enumeration value="IPC_NS" />
124 <xs:enumeration value="MNT_NS" />
125 <xs:enumeration value="NET_NS" />
126 <xs:enumeration value="PID_NS" />
127 <xs:enumeration value="USER_NS" />
128 <xs:enumeration value="UTS_NS" />
129 <xs:enumeration value="UID" />
130 <xs:enumeration value="EUID" />
131 <xs:enumeration value="SUID" />
132 <xs:enumeration value="GID" />
133 <xs:enumeration value="EGID" />
134 <xs:enumeration value="SGID" />
135 <xs:enumeration value="VUID" />
136 <xs:enumeration value="VEUID" />
137 <xs:enumeration value="VSUID" />
138 <xs:enumeration value="VGID" />
139 <xs:enumeration value="VEGID" />
140 <xs:enumeration value="VSGID" />
89b72577
JRJ
141 </xs:restriction>
142 </xs:simpleType>
143
c5e38b74
JR
144 <!-- Maps to loglevel_string char * -->
145 <xs:simpleType name="loglevel_string_type">
146 <xs:restriction base="xs:string">
147 <xs:enumeration value="" />
148 <xs:enumeration value="TRACE_EMERG" />
149 <xs:enumeration value="TRACE_ALERT" />
150 <xs:enumeration value="TRACE_CRIT" />
151 <xs:enumeration value="TRACE_ERR" />
152 <xs:enumeration value="TRACE_WARNING" />
153 <xs:enumeration value="TRACE_NOTICE" />
154 <xs:enumeration value="TRACE_INFO" />
155 <xs:enumeration value="TRACE_DEBUG_SYSTEM" />
156 <xs:enumeration value="TRACE_DEBUG_PROGRAM" />
157 <xs:enumeration value="TRACE_DEBUG_PROCESS" />
158 <xs:enumeration value="TRACE_DEBUG_MODULE" />
159 <xs:enumeration value="TRACE_DEBUG_UNIT" />
160 <xs:enumeration value="TRACE_DEBUG_FUNCTION" />
161 <xs:enumeration value="TRACE_DEBUG_LINE" />
162 <xs:enumeration value="TRACE_DEBUG" />
136f2f81
JRJ
163 <xs:enumeration value="JUL_OFF" />
164 <xs:enumeration value="JUL_SEVERE" />
165 <xs:enumeration value="JUL_WARNING" />
166 <xs:enumeration value="JUL_INFO" />
167 <xs:enumeration value="JUL_CONFIG" />
168 <xs:enumeration value="JUL_FINE" />
169 <xs:enumeration value="JUL_FINER" />
170 <xs:enumeration value="JUL_FINEST" />
171 <xs:enumeration value="JUL_ALL" />
e4d12c27
DG
172 <xs:enumeration value="LOG4J_OFF" />
173 <xs:enumeration value="LOG4J_FATAL" />
174 <xs:enumeration value="LOG4J_ERROR" />
175 <xs:enumeration value="LOG4J_WARN" />
176 <xs:enumeration value="LOG4J_INFO" />
177 <xs:enumeration value="LOG4J_DEBUG" />
178 <xs:enumeration value="LOG4J_TRACE" />
179 <xs:enumeration value="LOG4J_ALL" />
0e115563
DG
180 <xs:enumeration value="PYTHON_CRITICAL" />
181 <xs:enumeration value="PYTHON_ERROR" />
182 <xs:enumeration value="PYTHON_WARNING" />
183 <xs:enumeration value="PYTHON_INFO" />
184 <xs:enumeration value="PYTHON_DEBUG" />
185 <xs:enumeration value="PYTHON_NOTSET" />
c5e38b74
JR
186 <xs:enumeration value="UNKNOWN" />
187 </xs:restriction>
188 </xs:simpleType>
189
91c4d516
JG
190 <!-- Maps to enum lttng_rotation_state -->
191 <xs:simpleType name="rotation_state_type">
192 <xs:restriction base="xs:string">
193 <xs:enumeration value="ONGOING" />
194 <xs:enumeration value="COMPLETED" />
195 <xs:enumeration value="EXPIRED" />
196 <xs:enumeration value="ERROR" />
197 </xs:restriction>
198 </xs:simpleType>
199
200 <!-- Maps to enum lttng_trace_archive_location_relay_protocol_type -->
201 <xs:simpleType name="location_relay_protocol_type">
202 <xs:restriction base="xs:string">
203 <xs:enumeration value="TCP" />
204 </xs:restriction>
205 </xs:simpleType>
206
7e66b1b0
JRJ
207 <!-- Maps to the lttng_calibrate_type enum -->
208 <xs:simpleType name="calibrate_type_type">
209 <xs:restriction base="xs:string">
210 <xs:enumeration value="FUNCTION" />
211 </xs:restriction>
212 </xs:simpleType>
213
c5e38b74
JR
214 <!-- Maps to the lttng_event_probe_attr struct -->
215 <xs:complexType name="event_probe_attributes_type">
216 <xs:all>
00440276
JG
217 <xs:element name="address" type="tns:uint64_type" minOccurs="0" />
218 <xs:element name="offset" type="tns:uint64_type" minOccurs="0" />
219 <xs:element name="symbol_name" type="tns:name_type" minOccurs="0" />
c5e38b74
JR
220 </xs:all>
221 </xs:complexType>
222
223 <!-- Maps to the lttng_event_function_attr struct -->
224 <xs:complexType name="event_ftrace_attributes_type">
225 <xs:all>
00440276 226 <xs:element name="symbol_name" type="tns:name_type" />
c5e38b74
JR
227 </xs:all>
228 </xs:complexType>
229
230 <!-- Maps to per event type configuration -->
231 <xs:complexType name="event_attributes_type">
232 <xs:choice>
00440276
JG
233 <xs:element name="probe_attributes" type="tns:event_probe_attributes_type" />
234 <xs:element name="function_attributes" type="tns:event_ftrace_attributes_type" />
c5e38b74
JR
235 </xs:choice>
236 </xs:complexType>
237
f4a088f7 238 <!-- Maps to exclusion type -->
89476427
JRJ
239 <xs:complexType name="event_exclusion_list_type">
240 <xs:sequence>
241 <xs:element name="exclusion" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
242 </xs:sequence>
243 </xs:complexType>
244
c5e38b74
JR
245 <!-- Maps to lttng_event struct -->
246 <xs:complexType name="event_type">
247 <xs:all>
00440276
JG
248 <xs:element name="type" type="tns:event_type_type" default="TRACEPOINT" minOccurs="0" />
249 <xs:element name="name" type="tns:name_type" minOccurs="0" />
250 <xs:element name="loglevel_type" type="tns:loglevel_type" default="ALL" minOccurs="0" />
251 <xs:element name="loglevel" type="tns:loglevel_string_type" default="" minOccurs="0" />
c5e38b74 252 <xs:element name="enabled" type="xs:boolean" default="false" minOccurs="0" />
7b4aa11d 253 <xs:element name="filter_expression" type="xs:string" minOccurs="0" />
00440276
JG
254 <xs:element name="exclusions" type="tns:event_exclusion_list_type" minOccurs="0"/>
255 <xs:element name="attributes" type="tns:event_attributes_type" minOccurs="0" />
256 <xs:element name="event_fields" type="tns:event_fields_type" minOccurs="0" />
89476427 257 <xs:element name="success" type="xs:boolean" minOccurs="0" />
c5e38b74
JR
258 </xs:all>
259 </xs:complexType>
260
261 <!-- Maps to mi_lttng_version struct -->
262 <xs:complexType name="version_type">
263 <xs:all>
00440276
JG
264 <xs:element name="name" type="tns:name_type" />
265 <xs:element name="string" type="tns:name_type" />
266 <xs:element name="major" type="tns:uint32_type" />
c5e38b74 267 <xs:element name="url" type="xs:string" />
00440276 268 <xs:element name="minor" type="tns:uint32_type" />
314d5222 269 <xs:element name="commit" type="xs:string" />
c5e38b74 270 <xs:element name="license" type="xs:string" />
00440276 271 <xs:element name="patchLevel" type="tns:uint32_type" />
c5e38b74
JR
272 <xs:element name="description" type="xs:string" />
273 </xs:all>
274 </xs:complexType>
275
f4a088f7 276 <!-- Maps to an array of event -->
c5e38b74
JR
277 <xs:complexType name="event_list_type">
278 <xs:sequence>
00440276 279 <xs:element name="event" type="tns:event_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
280 </xs:sequence>
281 </xs:complexType>
282
283 <!-- Maps to the lttng_domain_type enum -->
284 <xs:simpleType name="domain_type_type">
285 <xs:restriction base="xs:string">
286 <xs:enumeration value="KERNEL"/>
287 <xs:enumeration value="UST"/>
288 <xs:enumeration value="JUL"/>
e4d12c27 289 <xs:enumeration value="LOG4J"/>
0e115563 290 <xs:enumeration value="PYTHON"/>
c5e38b74
JR
291 </xs:restriction>
292 </xs:simpleType>
293
294 <!-- Maps to the lttng_buffer_type enum -->
295 <xs:simpleType name="domain_buffer_type">
296 <xs:restriction base="xs:string">
297 <xs:enumeration value="PER_PID"/>
298 <xs:enumeration value="PER_UID"/>
299 <xs:enumeration value="GLOBAL"/>
300 </xs:restriction>
301 </xs:simpleType>
302
f4a088f7 303 <!-- Maps to the type mode of a channel -->
c5e38b74
JR
304 <xs:simpleType name="channel_overwrite_mode_type">
305 <xs:restriction base="xs:string">
306 <xs:enumeration value="DISCARD" />
307 <xs:enumeration value="OVERWRITE" />
308 </xs:restriction>
309 </xs:simpleType>
310
311 <!-- Maps to the lttng_event_output enum -->
312 <xs:simpleType name="event_output_type">
313 <xs:restriction base="xs:string">
314 <xs:enumeration value="SPLICE" />
315 <xs:enumeration value="MMAP" />
316 </xs:restriction>
317 </xs:simpleType>
318
bf239d4c
JR
319 <!-- map to a pid -->
320 <xs:complexType name="pid_type">
c5e38b74 321 <xs:all>
bf239d4c 322 <xs:element name="id" type="xs:int" />
00440276
JG
323 <xs:element name="name" type="tns:name_type" />
324 <xs:element name="events" type="tns:event_list_type" minOccurs="0" />
c5e38b74
JR
325 </xs:all>
326 </xs:complexType>
327
bf239d4c 328 <!-- maps to an array of pid -->
c5e38b74
JR
329 <xs:complexType name="pids_type">
330 <xs:sequence>
00440276 331 <xs:element name="pid" type="tns:pid_type" minOccurs="0" maxOccurs="unbounded" />
c12fcec9
JG
332 </xs:sequence>
333 </xs:complexType>
334
83d6d6c4
JR
335 <xs:simpleType name="tracker_target_type">
336 <xs:restriction base="xs:string">
337 <xs:enumeration value="ALL" />
338 <xs:enumeration value="NONE" />
339 <xs:enumeration value="LIST" />
340 </xs:restriction>
341 </xs:simpleType>
342
c12fcec9
JG
343 <xs:simpleType name="pidbyint">
344 <xs:restriction base="xs:integer">
345 <xs:minInclusive value="0"/>
346 <xs:maxInclusive value="4294967295" />
347 </xs:restriction>
348 </xs:simpleType>
349
83d6d6c4
JR
350 <xs:complexType name="pid_target_type_choice">
351 <xs:choice>
352 <xs:element name="id" type="tns:pidbyint" />
353 <xs:element name="name" type="xs:string" />
354 <xs:element name="all" type="xs:boolean" />
355 </xs:choice>
356 </xs:complexType>
c12fcec9
JG
357
358 <xs:complexType name="pid_target_type">
359 <xs:all>
83d6d6c4 360 <xs:element name="type" type="tns:pid_target_type_choice" />
c12fcec9
JG
361 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
362 </xs:all>
363 </xs:complexType>
364
365 <!-- Maps to a list of pid_targets-->
83d6d6c4 366 <xs:complexType name="pid_targets_type">
c12fcec9 367 <xs:sequence>
83d6d6c4 368 <xs:element name="pid_target" type="tns:pid_target_type" minOccurs="0" maxOccurs="unbounded"/>
c12fcec9
JG
369 </xs:sequence>
370 </xs:complexType>
371
372 <!-- Maps to a pid_tracker-->
373 <xs:complexType name="pid_tracker_type">
374 <xs:all>
83d6d6c4
JR
375 <xs:element name="target_type" type="tns:tracker_target_type" minOccurs="0" maxOccurs="1" />
376 <xs:element name="targets" type="tns:pid_targets_type" minOccurs="0" />
377 </xs:all>
378 </xs:complexType>
379
380 <xs:simpleType name="vpidbyint">
381 <xs:restriction base="xs:integer">
382 <xs:minInclusive value="0"/>
383 <xs:maxInclusive value="4294967295" />
384 </xs:restriction>
385 </xs:simpleType>
386
387 <xs:complexType name="vpid_target_type_choice">
388 <xs:choice>
389 <xs:element name="id" type="tns:vpidbyint" />
390 <xs:element name="name" type="xs:string" />
391 <xs:element name="all" type="xs:boolean" />
392 </xs:choice>
393 </xs:complexType>
394
395 <xs:complexType name="vpid_target_type">
396 <xs:all>
397 <xs:element name="type" type="tns:vpid_target_type_choice" minOccurs="0" maxOccurs="1" />
398 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
399 </xs:all>
400 </xs:complexType>
401
402 <!-- Maps to a list of vpid_targets-->
403 <xs:complexType name="vpid_targets_type">
404 <xs:sequence>
405 <xs:element name="vpid_target" type="tns:vpid_target_type" minOccurs="0" maxOccurs="unbounded"/>
406 </xs:sequence>
407 </xs:complexType>
408
409 <!-- Maps to a vpid_tracker-->
410 <xs:complexType name="vpid_tracker_type">
411 <xs:all>
412 <xs:element name="target_type" type="tns:tracker_target_type" minOccurs="0" maxOccurs="1" />
413 <xs:element name="targets" type="tns:vpid_targets_type" minOccurs="0" />
414 </xs:all>
415 </xs:complexType>
416
417 <xs:simpleType name="uidbyint">
418 <xs:restriction base="xs:integer">
419 <xs:minInclusive value="0"/>
420 <xs:maxInclusive value="4294967295" />
421 </xs:restriction>
422 </xs:simpleType>
423
424 <xs:complexType name="uid_target_type_choice">
425 <xs:choice>
426 <xs:element name="id" type="tns:uidbyint" />
427 <xs:element name="name" type="xs:string" />
428 <xs:element name="all" type="xs:boolean" />
429 </xs:choice>
430 </xs:complexType>
431
432 <xs:complexType name="uid_target_type">
433 <xs:all>
434 <xs:element name="type" type="tns:uid_target_type_choice" minOccurs="0" maxOccurs="1" />
435 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
436 </xs:all>
437 </xs:complexType>
438
439 <!-- Maps to a list of uid_targets-->
440 <xs:complexType name="uid_targets_type">
441 <xs:sequence>
442 <xs:element name="uid_target" type="tns:uid_target_type" minOccurs="0" maxOccurs="unbounded"/>
443 </xs:sequence>
444 </xs:complexType>
445
446 <!-- Maps to a uid_tracker-->
447 <xs:complexType name="uid_tracker_type">
448 <xs:all>
449 <xs:element name="target_type" type="tns:tracker_target_type" minOccurs="0" maxOccurs="1" />
450 <xs:element name="targets" type="tns:uid_targets_type" minOccurs="0" />
451 </xs:all>
452 </xs:complexType>
453
454 <xs:simpleType name="vuidbyint">
455 <xs:restriction base="xs:integer">
456 <xs:minInclusive value="0"/>
457 <xs:maxInclusive value="4294967295" />
458 </xs:restriction>
459 </xs:simpleType>
460
461 <xs:complexType name="vuid_target_type_choice">
462 <xs:choice>
463 <xs:element name="id" type="tns:vuidbyint" />
464 <xs:element name="name" type="xs:string" />
465 <xs:element name="all" type="xs:boolean" />
466 </xs:choice>
467 </xs:complexType>
468
469 <xs:complexType name="vuid_target_type">
470 <xs:all>
471 <xs:element name="type" type="tns:vuid_target_type_choice" minOccurs="0" maxOccurs="1" />
472 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
473 </xs:all>
474 </xs:complexType>
475
476 <!-- Maps to a list of vuid_targets-->
477 <xs:complexType name="vuid_targets_type">
478 <xs:sequence>
479 <xs:element name="vuid_target" type="tns:vuid_target_type" minOccurs="0" maxOccurs="unbounded"/>
480 </xs:sequence>
481 </xs:complexType>
482
483 <!-- Maps to a vuid_tracker-->
484 <xs:complexType name="vuid_tracker_type">
485 <xs:all>
486 <xs:element name="target_type" type="tns:tracker_target_type" minOccurs="0" maxOccurs="1" />
487 <xs:element name="targets" type="tns:vuid_targets_type" minOccurs="0" />
488 </xs:all>
489 </xs:complexType>
490
491 <xs:simpleType name="gidbyint">
492 <xs:restriction base="xs:integer">
493 <xs:minInclusive value="0"/>
494 <xs:maxInclusive value="4294967295" />
495 </xs:restriction>
496 </xs:simpleType>
497
498 <xs:complexType name="gid_target_type_choice">
499 <xs:choice>
500 <xs:element name="id" type="tns:gidbyint" />
501 <xs:element name="name" type="xs:string" />
502 <xs:element name="all" type="xs:boolean" />
503 </xs:choice>
504 </xs:complexType>
505
506 <xs:complexType name="gid_target_type">
507 <xs:all>
508 <xs:element name="type" type="tns:gid_target_type_choice" minOccurs="0" maxOccurs="1" />
509 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
510 </xs:all>
511 </xs:complexType>
512
513 <!-- Maps to a list of gid_targets-->
514 <xs:complexType name="gid_targets_type">
515 <xs:sequence>
516 <xs:element name="gid_target" type="tns:gid_target_type" minOccurs="0" maxOccurs="unbounded"/>
517 </xs:sequence>
518 </xs:complexType>
519
520 <!-- Maps to a gid_tracker-->
521 <xs:complexType name="gid_tracker_type">
522 <xs:all>
523 <xs:element name="target_type" type="tns:tracker_target_type" minOccurs="0" maxOccurs="1" />
524 <xs:element name="targets" type="tns:gid_targets_type" minOccurs="0" />
525 </xs:all>
526 </xs:complexType>
527
528 <xs:simpleType name="vgidbyint">
529 <xs:restriction base="xs:integer">
530 <xs:minInclusive value="0"/>
531 <xs:maxInclusive value="4294967295" />
532 </xs:restriction>
533 </xs:simpleType>
534
535 <xs:complexType name="vgid_target_type_choice">
536 <xs:choice>
537 <xs:element name="id" type="tns:vgidbyint" />
538 <xs:element name="name" type="xs:string" />
539 <xs:element name="all" type="xs:boolean" />
540 </xs:choice>
541 </xs:complexType>
542
543 <xs:complexType name="vgid_target_type">
544 <xs:all>
545 <xs:element name="type" type="tns:vgid_target_type_choice" minOccurs="0" maxOccurs="1" />
546 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
547 </xs:all>
548 </xs:complexType>
549
550 <!-- Maps to a list of vgid_targets-->
551 <xs:complexType name="vgid_targets_type">
552 <xs:sequence>
553 <xs:element name="vgid_target" type="tns:vgid_target_type" minOccurs="0" maxOccurs="unbounded"/>
554 </xs:sequence>
555 </xs:complexType>
556
557 <!-- Maps to a vgid_tracker-->
558 <xs:complexType name="vgid_tracker_type">
559 <xs:all>
560 <xs:element name="target_type" type="tns:tracker_target_type" minOccurs="0" maxOccurs="1" />
561 <xs:element name="targets" type="tns:vgid_targets_type" minOccurs="0" />
c12fcec9
JG
562 </xs:all>
563 </xs:complexType>
564
565 <!-- Maps to a list of trackers-->
566 <xs:complexType name="trackers_type">
83d6d6c4
JR
567 <xs:sequence>
568 <xs:choice minOccurs="0" maxOccurs="unbounded">
569 <xs:element name="pid_tracker" type="tns:pid_tracker_type" maxOccurs="1" />
570 <xs:element name="vpid_tracker" type="tns:vpid_tracker_type" maxOccurs="1" />
571 <xs:element name="uid_tracker" type="tns:uid_tracker_type" maxOccurs="1" />
572 <xs:element name="vuid_tracker" type="tns:vuid_tracker_type" maxOccurs="1" />
573 <xs:element name="gid_tracker" type="tns:gid_tracker_type" maxOccurs="1" />
574 <xs:element name="vgid_tracker" type="tns:vgid_tracker_type" maxOccurs="1" />
575 </xs:choice>
c5e38b74
JR
576 </xs:sequence>
577 </xs:complexType>
578
579 <!-- Maps to struct lttng_domain and contains channels -->
580 <xs:complexType name="domain_type">
581 <xs:all>
00440276
JG
582 <xs:element name="type" type="tns:domain_type_type" />
583 <xs:element name="buffer_type" type="tns:domain_buffer_type" />
584 <xs:element name="pids" type="tns:pids_type" minOccurs="0" />
585 <xs:element name="channels" type="tns:channels_type" minOccurs="0" />
586 <xs:element name="events" type="tns:event_list_type" minOccurs="0" />
587 <xs:element name="trackers" type="tns:trackers_type" minOccurs="0" />
c5e38b74
JR
588 </xs:all>
589 </xs:complexType>
590
591 <!-- Maps to struct lttng_channel -->
592 <xs:complexType name="channel_type">
593 <xs:all>
00440276 594 <xs:element name="name" type="tns:name_type" />
f4a088f7 595 <xs:element name="enabled" type="xs:boolean" default="true" minOccurs="0" />
00440276
JG
596 <xs:element name="attributes" type="tns:channel_attributes_type" minOccurs="0" />
597 <xs:element name="events" type="tns:event_list_type" minOccurs="0" />
9618049b 598 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
c5e38b74
JR
599 </xs:all>
600 </xs:complexType>
601
602 <!-- Maps to struct lttng_channel_attr -->
603 <xs:complexType name="channel_attributes_type">
604 <xs:all>
00440276
JG
605 <xs:element name="overwrite_mode" type="tns:channel_overwrite_mode_type" default="DISCARD" minOccurs="0" />
606 <xs:element name="subbuffer_size" type="tns:uint64_type" minOccurs="0" /> <!-- bytes -->
607 <xs:element name="subbuffer_count" type="tns:uint64_type" default="4" minOccurs="0" />
608 <xs:element name="switch_timer_interval" type="tns:uint32_type" default="0" minOccurs="0" /> <!-- usec -->
609 <xs:element name="read_timer_interval" type="tns:uint32_type" /> <!-- usec -->
610 <xs:element name="output_type" type="tns:event_output_type" />
611 <xs:element name="tracefile_size" type="tns:uint64_type" default="0" minOccurs="0" /> <!-- bytes -->
612 <xs:element name="tracefile_count" type="tns:uint64_type" default="0" minOccurs="0" />
613 <xs:element name="live_timer_interval" type="tns:uint32_type" default="0" minOccurs="0" /> <!-- usec -->
fb83fe64
JD
614 <xs:element name="discarded_events" type="tns:uint64_type" default="0" minOccurs="0" />
615 <xs:element name="lost_packets" type="tns:uint64_type" default="0" minOccurs="0" />
cf0bcb51 616 <xs:element name="monitor_timer_interval" type="tns:uint64_type" default="0" minOccurs="0" />
491d1539 617 <xs:element name="blocking_timeout" type="tns:blocking_timeout_type" default="0" minOccurs="0" />
c5e38b74
JR
618 </xs:all>
619 </xs:complexType>
620
50534d6f
JRJ
621 <!-- Maps to struct lttng_snapshot_output -->
622 <xs:complexType name="snapshot_type">
623 <xs:all>
00440276
JG
624 <xs:element name="id" type="tns:uint32_type" minOccurs="0" />
625 <xs:element name="max_size" type="tns:uint64_type" minOccurs="0" />
626 <xs:element name="name" type="tns:name_type" minOccurs="0" />
627 <xs:element name="session_name" type="tns:name_type" minOccurs="0" />
dd89693f
JR
628 <xs:element name="ctrl_url" type="xs:string" minOccurs="0" />
629 <xs:element name="data_url" type="xs:string" minOccurs="0" />
50534d6f
JRJ
630 </xs:all>
631 </xs:complexType>
632
633 <xs:complexType name="snapshots_type">
634 <xs:sequence>
00440276 635 <xs:element name="snapshot" type="tns:snapshot_type" minOccurs="0" maxOccurs="unbounded" />
50534d6f
JRJ
636 </xs:sequence>
637 </xs:complexType>
638
66ea93b1
JG
639 <xs:complexType name="periodic_rotation_schedule_type">
640 <xs:all>
641 <xs:element name="time_us" type="tns:uint64_type" minOccurs="0" />
642 </xs:all>
643 </xs:complexType>
644
645 <xs:complexType name="size_threshold_rotation_schedule_type">
646 <xs:all>
647 <xs:element name="bytes" type="tns:uint64_type" minOccurs="0" />
648 </xs:all>
649 </xs:complexType>
650
651 <xs:complexType name="rotation_schedule_type">
652 <xs:sequence>
653 <xs:choice maxOccurs="unbounded">
654 <xs:element name="periodic" type="tns:periodic_rotation_schedule_type" maxOccurs="unbounded" />
655 <xs:element name="size_threshold" type="tns:size_threshold_rotation_schedule_type" maxOccurs="unbounded" />
656 </xs:choice>
657 </xs:sequence>
658 </xs:complexType>
659
c5e38b74
JR
660 <xs:complexType name="channels_type">
661 <xs:sequence>
00440276 662 <xs:element name="channel" type="tns:channel_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
663 </xs:sequence>
664 </xs:complexType>
665
f4a088f7 666 <!-- Maps to a lttng_session -->
c5e38b74
JR
667 <xs:complexType name="session_type">
668 <xs:all>
00440276 669 <xs:element name="name" type="tns:name_type" />
dd89693f 670 <xs:element name="path" type="xs:string" minOccurs="0" />
1734c658 671 <xs:element name="enabled" type="xs:boolean" default="false" minOccurs="0" />
00440276
JG
672 <xs:element name="snapshot_mode" type="tns:uint32_type" minOccurs="0" />
673 <xs:element name="live_timer_interval" type="tns:uint32_type" minOccurs="0" />
674 <xs:element name="channels" type="tns:channels_type" minOccurs="0" />
675 <xs:element name="domains" type="tns:domains_type" minOccurs="0" />
676 <xs:element name="snapshots" type="tns:snapshots_type" minOccurs="0" />
66ea93b1 677 <xs:element name="rotation_schedules" type="tns:rotation_schedule_type" minOccurs="0" />
c5e38b74
JR
678 </xs:all>
679 </xs:complexType>
680
f4a088f7 681 <!-- Maps to a lttng_event_field -->
c5e38b74
JR
682 <xs:complexType name="event_field_type">
683 <xs:all>
00440276
JG
684 <xs:element name="name" type="tns:name_type" />
685 <xs:element name="type" type="tns:event_field_type_type" />
f4a088f7 686 <xs:element name="nowrite" type="xs:int" />
c5e38b74
JR
687 </xs:all>
688 </xs:complexType>
689
17c4550a 690 <!-- Maps to the save command -->
1734c658
JRJ
691 <xs:complexType name="save_type">
692 <xs:all>
00440276 693 <xs:element name="session" type="tns:session_type" />
dd89693f 694 <xs:element name="path" type="xs:string" />
1734c658
JRJ
695 </xs:all>
696 </xs:complexType>
697
17c4550a 698 <!-- Maps to the load command -->
1734c658
JRJ
699 <xs:complexType name="load_type">
700 <xs:all>
00440276 701 <xs:element name="session" type="tns:session_type" />
dd89693f 702 <xs:element name="path" type="xs:string" />
23cb2d55
JR
703 <xs:element name="overrides" type="tns:overrides_type" />
704 </xs:all>
705 </xs:complexType>
706
707 <!-- Maps to the override parameters of the load command -->
708 <xs:complexType name="overrides_type">
709 <xs:all>
710 <xs:element name="name" type="tns:name_type" minOccurs="0" />
711 <xs:element name="url" type="xs:string" minOccurs="0" />
1734c658
JRJ
712 </xs:all>
713 </xs:complexType>
c5e38b74 714
7e66b1b0
JRJ
715 <!-- Maps to struct lttng_calibrate -->
716 <xs:complexType name="calibrate_type">
717 <xs:all>
00440276 718 <xs:element name="type" type="tns:calibrate_type_type" />
7e66b1b0
JRJ
719 </xs:all>
720 </xs:complexType>
721
17c4550a 722 <!-- Maps to lttng_event_perf_counter_ctx -->
89b72577
JRJ
723 <xs:complexType name="perf_counter_context_type">
724 <xs:all>
8d40c39b
JG
725 <xs:element name="type" type="tns:uint32_type" />
726 <xs:element name="config" type="tns:uint64_type" />
727 <xs:element name="name" type="tns:name_type" />
89b72577
JRJ
728 </xs:all>
729 </xs:complexType>
730
8d40c39b
JG
731 <!-- Maps to app_ctx -->
732 <xs:complexType name="app_context_type">
89b72577 733 <xs:all>
8d40c39b
JG
734 <xs:element name="provider_name" type="xs:string"/>
735 <xs:element name="ctx_name" type="xs:string"/>
89b72577
JRJ
736 </xs:all>
737 </xs:complexType>
738
8d40c39b
JG
739 <!-- Maps to lttng_event_context -->
740 <xs:complexType name="context_type">
59deec0c
JR
741 <xs:sequence>
742 <xs:choice>
743 <xs:element name="type" type="tns:context_type_type"/>
744 <xs:element name="perf" type="tns:perf_counter_context_type"/>
745 <xs:element name="app" type="tns:app_context_type"/>
746 </xs:choice>
747 <xs:element name="symbol" type="xs:string" minOccurs="0" />
748 </xs:sequence>
8d40c39b
JG
749 </xs:complexType>
750
f4a088f7 751 <!-- Maps to an array of domain -->
c5e38b74
JR
752 <xs:complexType name="domains_type">
753 <xs:sequence>
00440276 754 <xs:element name="domain" type="tns:domain_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
755 </xs:sequence>
756 </xs:complexType>
757
f4a088f7 758 <!-- Maps to an array of session -->
c5e38b74
JR
759 <xs:complexType name="sessions_type">
760 <xs:sequence>
00440276 761 <xs:element name="session" type="tns:session_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
762 </xs:sequence>
763 </xs:complexType>
764
f4a088f7 765 <!-- Maps to an array of event_field -->
c5e38b74
JR
766 <xs:complexType name="event_fields_type">
767 <xs:sequence>
00440276 768 <xs:element name="event_field" type="tns:event_field_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
769 </xs:sequence>
770 </xs:complexType>
771
f4a088f7 772 <!-- Maps to an array of context -->
89b72577
JRJ
773 <xs:complexType name="contexts_type">
774 <xs:sequence>
00440276 775 <xs:element name="context" type="tns:context_type" minOccurs="0" maxOccurs="unbounded" />
89b72577
JRJ
776 </xs:sequence>
777 </xs:complexType>
778
54897b57 779 <!-- Maps to an action during snapshot command -->
d0adede2 780 <xs:complexType name="snapshot_cmd_type">
50534d6f 781 <xs:sequence>
d0adede2 782 <xs:element name="name" type="tns:snapshot_action_type" minOccurs="0" />
00440276 783 <xs:element name="output" type="tns:output_type" minOccurs="0" />
50534d6f
JRJ
784 </xs:sequence>
785 </xs:complexType>
786
787 <!-- Type of snapshot commands -->
d0adede2 788 <xs:simpleType name="snapshot_action_type">
50534d6f 789 <xs:restriction base="xs:string">
f4a088f7
JRJ
790 <xs:enumeration value="list-output" />
791 <xs:enumeration value="del-output" />
792 <xs:enumeration value="add-output" />
793 <xs:enumeration value="record-output" />
50534d6f
JRJ
794 </xs:restriction>
795 </xs:simpleType>
796
54897b57 797 <!-- Maps to an action during metadata command -->
d0adede2 798 <xs:complexType name="metadata_cmd_type">
54897b57 799 <xs:sequence>
d0adede2 800 <xs:element name="name" type="tns:metadata_action_type" minOccurs="0" />
54897b57
JD
801 </xs:sequence>
802 </xs:complexType>
803
804 <!-- Type of metadata commands -->
d0adede2 805 <xs:simpleType name="metadata_action_type">
54897b57
JD
806 <xs:restriction base="xs:string">
807 <xs:enumeration value="regenerate" />
808 </xs:restriction>
809 </xs:simpleType>
810
d0adede2
JG
811 <!-- Type of regenerate commands -->
812 <xs:simpleType name="regenerate_action_type">
813 <xs:restriction base="xs:string">
814 <xs:enumeration value="metadata" />
815 <xs:enumeration value="statedump" />
816 </xs:restriction>
817 </xs:simpleType>
818
819 <!-- Type of regenerate command -->
820 <xs:complexType name="regenerate_cmd_type">
821 <xs:sequence>
822 <xs:element name="name" type="tns:regenerate_action_type" minOccurs="0" />
823 </xs:sequence>
824 </xs:complexType>
825
91c4d516
JG
826 <xs:complexType name="local_location_type">
827 <xs:sequence>
828 <xs:element name="absolute_path" type="xs:string" minOccurs="1" />
829 </xs:sequence>
830 </xs:complexType>
831
832 <xs:complexType name="relay_location_type">
833 <xs:sequence>
834 <xs:element name="host" type="xs:string" minOccurs="1" />
835 <xs:element name="control_port" type="xs:int" minOccurs="0" />
836 <xs:element name="data_port" type="xs:int" minOccurs="0" />
837 <xs:element name="protocol" type="tns:location_relay_protocol_type" minOccurs="1" />
838 <xs:element name="relative_path" type="xs:string" minOccurs="0" />
839 </xs:sequence>
840 </xs:complexType>
841
842 <xs:complexType name="location_type">
843 <xs:choice>
844 <xs:element name="local" type="tns:local_location_type" minOccurs="0" />
845 <xs:element name="relay" type="tns:relay_location_type" minOccurs="0" />
846 </xs:choice>
847 </xs:complexType>
848
79344fee 849 <!-- Maps to the rotate command -->
91c4d516
JG
850 <xs:complexType name="rotate_type">
851 <xs:sequence>
852 <xs:element name="session_name" type="tns:name_type" minOccurs="1" />
853 <xs:element name="state" type="tns:rotation_state_type" minOccurs="1" />
854 <xs:element name="location" type="tns:location_type" minOccurs="0" />
855 </xs:sequence>
79344fee
JG
856 </xs:complexType>
857
66ea93b1 858 <xs:complexType name="rotation_schedule_result_type">
79344fee 859 <xs:sequence>
66ea93b1
JG
860 <xs:element name="rotation_schedule" type="tns:rotation_schedule_type" minOccurs="1" />
861 <xs:element name="success" type="xs:boolean" minOccurs="1"/>
79344fee
JG
862 </xs:sequence>
863 </xs:complexType>
864
66ea93b1
JG
865 <!-- Maps to the enable/disable-rotation commands -->
866 <xs:complexType name="rotation_schedule_cmd_type">
79344fee 867 <xs:sequence>
66ea93b1
JG
868 <xs:element name="session_name" type="tns:name_type" minOccurs="1" />
869 <xs:element name="rotation_schedule_result" type="tns:rotation_schedule_result_type" minOccurs="1" maxOccurs="unbounded" />
79344fee
JG
870 </xs:sequence>
871 </xs:complexType>
872
c5e38b74
JR
873 <xs:complexType name="output_type">
874 <xs:choice>
00440276
JG
875 <xs:element name="domains" type="tns:domains_type" minOccurs="0" />
876 <xs:element name="sessions" type="tns:sessions_type" minOccurs="0" />
877 <xs:element name="session" type="tns:session_type" minOccurs="0" />
d0adede2 878 <xs:element name="snapshot_action" type="tns:snapshot_cmd_type" minOccurs="0" />
00440276
JG
879 <xs:element name="snapshot" type="tns:snapshot_type" minOccurs="0" />
880 <xs:element name="version" type="tns:version_type" minOccurs="0" />
881 <xs:element name="save" type="tns:save_type" minOccurs="0" />
882 <xs:element name="load" type="tns:load_type" minOccurs="0" />
883 <xs:element name="calibrate" type="tns:calibrate_type" minOccurs="0" />
884 <xs:element name="contexts" type="tns:contexts_type" minOccurs="0" />
885 <xs:element name="channels" type="tns:channels_type" minOccurs="0" />
886 <xs:element name="events" type="tns:event_list_type" minOccurs="0" />
887 <xs:element name="channel" type="tns:channel_type" minOccurs="0" />
83d6d6c4 888 <xs:element name="trackers" type="tns:trackers_type" minOccurs="0" />
d0adede2
JG
889 <xs:element name="metadata_action" type="tns:metadata_cmd_type" minOccurs="0" />
890 <xs:element name="regenerate_action" type="tns:regenerate_cmd_type" minOccurs="0" />
91c4d516 891 <xs:element name="rotation" type="tns:rotate_type" minOccurs="0" />
66ea93b1 892 <xs:element name="rotation_schedule_results" type="tns:rotation_schedule_cmd_type" minOccurs="0" />
c5e38b74
JR
893 </xs:choice>
894 </xs:complexType>
895
896 <!-- Maps to the mi_lttng commands -->
897 <xs:simpleType name="command_string_type">
898 <xs:restriction base="xs:string">
37d03ff7 899 <xs:enumeration value="create" />
c5e38b74 900 <xs:enumeration value="list" />
50534d6f 901 <xs:enumeration value="snapshot" />
c5e38b74 902 <xs:enumeration value="version" />
1734c658
JRJ
903 <xs:enumeration value="save" />
904 <xs:enumeration value="load" />
1cfc0bc8 905 <xs:enumeration value="start" />
e5b83100 906 <xs:enumeration value="stop" />
65f25c66 907 <xs:enumeration value="destroy" />
7e66b1b0 908 <xs:enumeration value="calibrate" />
89b72577 909 <xs:enumeration value="add-context" />
acc09215 910 <xs:enumeration value="enable-channel" />
89476427 911 <xs:enumeration value="enable-event" />
ce91cd0b 912 <xs:enumeration value="set-session" />
e4d484a5 913 <xs:enumeration value="disable-event" />
50534d6f 914 <xs:enumeration value="disable-channel" />
c12fcec9
JG
915 <xs:enumeration value="track" />
916 <xs:enumeration value="untrack" />
54897b57 917 <xs:enumeration value="metadata" />
d0adede2 918 <xs:enumeration value="regenerate" />
d68c9a04 919 <xs:enumeration value="rotate" />
79344fee
JG
920 <xs:enumeration value="enable-rotation" />
921 <xs:enumeration value="disable-rotation" />
511ed4e2 922 <xs:enumeration value="clear" />
c5e38b74
JR
923 </xs:restriction>
924 </xs:simpleType>
925
926 <xs:element name="command">
927 <xs:complexType>
928 <xs:all>
00440276
JG
929 <xs:element name="name" type="tns:command_string_type" maxOccurs="1" />
930 <xs:element name="output" type="tns:output_type" maxOccurs="1" />
1734c658 931 <xs:element name="success" type="xs:boolean" minOccurs="0" maxOccurs="1" />
c5e38b74 932 </xs:all>
8a7db2af 933 <xs:attribute name="schemaVersion" type="xs:string" use="required"/>
c5e38b74
JR
934 </xs:complexType>
935 </xs:element>
936</xs:schema>
This page took 0.085772 seconds and 4 git commands to generate.