Fix: use <unistd.h> instead of <sys/unistd.h>
[lttng-tools.git] / src / common / mi-lttng-4.1.xsd
CommitLineData
c5e38b74
JR
1<?xml version="1.0" encoding="UTF-8"?>
2<!--
ab5be9fa
MJ
3Copyright (C) 2014 Oliver Cotte <olivier.cotte@polymtl.ca>
4Copyright (C) 2014 Jonathan Rajotte <jonathan.r.julien@gmail.com>
5Copyright (C) 2016 Jérémie Galarneau <jeremie.galarneau@efficios.com>
c5e38b74 6
ab5be9fa 7SPDX-License-Identifier: MIT
c5e38b74 8
c5e38b74
JR
9-->
10<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
a18d9544
JG
11 targetNamespace="https://lttng.org/xml/ns/lttng-mi"
12 xmlns:tns="https://lttng.org/xml/ns/lttng-mi"
1f1f7e35 13 elementFormDefault="qualified" version="4.1">
c5e38b74
JR
14
15 <!-- Maps to the uint32_t type -->
16 <xs:simpleType name="uint32_type">
17 <xs:restriction base="xs:integer">
18 <xs:minInclusive value="0" />
19 <xs:maxInclusive value="4294967295" />
20 </xs:restriction>
21 </xs:simpleType>
22
23 <!-- Maps to the uint64_t type -->
24 <xs:simpleType name="uint64_type">
25 <xs:restriction base="xs:integer">
26 <xs:minInclusive value="0" />
27 <xs:maxInclusive value="18446744073709551615" />
28 </xs:restriction>
29 </xs:simpleType>
30
252bb128
JR
31 <!-- Maps to the uint64_t type -->
32 <xs:simpleType name="ratio_type">
33 <xs:restriction base="xs:double">
34 <xs:minInclusive value="0" />
35 <xs:maxInclusive value="1" />
36 </xs:restriction>
37 </xs:simpleType>
38
491d1539
MD
39 <!--
40 Maps to the range allowed for blocking timeout: -1 (block
41 forever), 0 (do not block), positive integer value (blocking
42 time in usec) limited by its signed 32-bit representation when
43 converted to msec.
44 -->
45 <xs:simpleType name="blocking_timeout_type">
46 <xs:restriction base="xs:integer">
47 <xs:minInclusive value="-1" />
48 <xs:maxInclusive value="2147483648000" />
49 </xs:restriction>
50 </xs:simpleType>
51
c5e38b74
JR
52 <!-- Maps to the char name[LTTNG_SYMBOL_NAME_LEN] -->
53 <xs:simpleType name="name_type">
54 <xs:restriction base="xs:string">
55 <xs:maxLength value="255" />
56 </xs:restriction>
57 </xs:simpleType>
58
59 <!-- Maps to the lttng_event_type enum -->
60 <xs:simpleType name="event_type_type">
61 <xs:restriction base="xs:string">
62 <xs:enumeration value="ALL" />
63 <xs:enumeration value="TRACEPOINT" />
64 <xs:enumeration value="PROBE" />
65 <xs:enumeration value="FUNCTION" />
66 <xs:enumeration value="FUNCTION_ENTRY" />
67 <xs:enumeration value="NOOP" />
68 <xs:enumeration value="SYSCALL" />
5a1c0a75 69 <xs:enumeration value="USERSPACE_PROBE" />
c5e38b74
JR
70 </xs:restriction>
71 </xs:simpleType>
72
73 <!-- Maps to the lttng_event_field_type enum -->
74 <xs:simpleType name="event_field_type_type">
75 <xs:restriction base="xs:string">
76 <xs:enumeration value="OTHER" />
77 <xs:enumeration value="INTEGER" />
78 <xs:enumeration value="ENUM" />
79 <xs:enumeration value="FLOAT" />
80 <xs:enumeration value="STRING" />
81 </xs:restriction>
82 </xs:simpleType>
83
84 <!-- Maps to the lttng_loglevel_type enum -->
85 <xs:simpleType name="loglevel_type">
86 <xs:restriction base="xs:string">
87 <xs:enumeration value="ALL" />
88 <xs:enumeration value="RANGE" />
89 <xs:enumeration value="SINGLE" />
90 <xs:enumeration value="UNKNOWN" />
91 </xs:restriction>
92 </xs:simpleType>
93
c9ffe7f5 94 <!-- Maps to the lttng_event_context_type enum -->
89b72577
JRJ
95 <xs:simpleType name="context_type_type">
96 <xs:restriction base="xs:string">
89b72577
JRJ
97 <xs:enumeration value="PID" />
98 <xs:enumeration value="PROCNAME" />
99 <xs:enumeration value="PRIO" />
100 <xs:enumeration value="NICE" />
101 <xs:enumeration value="VPID" />
102 <xs:enumeration value="TID" />
103 <xs:enumeration value="VTID" />
104 <xs:enumeration value="PPID" />
105 <xs:enumeration value="VPPID" />
106 <xs:enumeration value="PTHREAD_ID" />
107 <xs:enumeration value="HOSTNAME" />
108 <xs:enumeration value="IP" />
a72332c3
JR
109 <xs:enumeration value="INTERRUPTIBLE" />
110 <xs:enumeration value="PREEMPTIBLE" />
111 <xs:enumeration value="NEED_RESCHEDULE" />
112 <xs:enumeration value="MIGRATABLE" />
16c4c991
FD
113 <xs:enumeration value="CALLSTACK_USER" />
114 <xs:enumeration value="CALLSTACK_KERNEL" />
65ae1ae9
JR
115 <xs:enumeration value="CGROUP_NS" />
116 <xs:enumeration value="IPC_NS" />
117 <xs:enumeration value="MNT_NS" />
118 <xs:enumeration value="NET_NS" />
119 <xs:enumeration value="PID_NS" />
d37ac3cd 120 <xs:enumeration value="TIME_NS" />
65ae1ae9
JR
121 <xs:enumeration value="USER_NS" />
122 <xs:enumeration value="UTS_NS" />
123 <xs:enumeration value="UID" />
124 <xs:enumeration value="EUID" />
125 <xs:enumeration value="SUID" />
126 <xs:enumeration value="GID" />
127 <xs:enumeration value="EGID" />
128 <xs:enumeration value="SGID" />
129 <xs:enumeration value="VUID" />
130 <xs:enumeration value="VEUID" />
131 <xs:enumeration value="VSUID" />
132 <xs:enumeration value="VGID" />
133 <xs:enumeration value="VEGID" />
134 <xs:enumeration value="VSGID" />
89b72577
JRJ
135 </xs:restriction>
136 </xs:simpleType>
137
c5e38b74
JR
138 <!-- Maps to loglevel_string char * -->
139 <xs:simpleType name="loglevel_string_type">
140 <xs:restriction base="xs:string">
141 <xs:enumeration value="" />
142 <xs:enumeration value="TRACE_EMERG" />
143 <xs:enumeration value="TRACE_ALERT" />
144 <xs:enumeration value="TRACE_CRIT" />
145 <xs:enumeration value="TRACE_ERR" />
146 <xs:enumeration value="TRACE_WARNING" />
147 <xs:enumeration value="TRACE_NOTICE" />
148 <xs:enumeration value="TRACE_INFO" />
149 <xs:enumeration value="TRACE_DEBUG_SYSTEM" />
150 <xs:enumeration value="TRACE_DEBUG_PROGRAM" />
151 <xs:enumeration value="TRACE_DEBUG_PROCESS" />
152 <xs:enumeration value="TRACE_DEBUG_MODULE" />
153 <xs:enumeration value="TRACE_DEBUG_UNIT" />
154 <xs:enumeration value="TRACE_DEBUG_FUNCTION" />
155 <xs:enumeration value="TRACE_DEBUG_LINE" />
156 <xs:enumeration value="TRACE_DEBUG" />
136f2f81
JRJ
157 <xs:enumeration value="JUL_OFF" />
158 <xs:enumeration value="JUL_SEVERE" />
159 <xs:enumeration value="JUL_WARNING" />
160 <xs:enumeration value="JUL_INFO" />
161 <xs:enumeration value="JUL_CONFIG" />
162 <xs:enumeration value="JUL_FINE" />
163 <xs:enumeration value="JUL_FINER" />
164 <xs:enumeration value="JUL_FINEST" />
165 <xs:enumeration value="JUL_ALL" />
e4d12c27
DG
166 <xs:enumeration value="LOG4J_OFF" />
167 <xs:enumeration value="LOG4J_FATAL" />
168 <xs:enumeration value="LOG4J_ERROR" />
169 <xs:enumeration value="LOG4J_WARN" />
170 <xs:enumeration value="LOG4J_INFO" />
171 <xs:enumeration value="LOG4J_DEBUG" />
172 <xs:enumeration value="LOG4J_TRACE" />
173 <xs:enumeration value="LOG4J_ALL" />
0e115563
DG
174 <xs:enumeration value="PYTHON_CRITICAL" />
175 <xs:enumeration value="PYTHON_ERROR" />
176 <xs:enumeration value="PYTHON_WARNING" />
177 <xs:enumeration value="PYTHON_INFO" />
178 <xs:enumeration value="PYTHON_DEBUG" />
179 <xs:enumeration value="PYTHON_NOTSET" />
c5e38b74
JR
180 <xs:enumeration value="UNKNOWN" />
181 </xs:restriction>
182 </xs:simpleType>
183
91c4d516
JG
184 <!-- Maps to enum lttng_rotation_state -->
185 <xs:simpleType name="rotation_state_type">
186 <xs:restriction base="xs:string">
187 <xs:enumeration value="ONGOING" />
188 <xs:enumeration value="COMPLETED" />
189 <xs:enumeration value="EXPIRED" />
190 <xs:enumeration value="ERROR" />
191 </xs:restriction>
192 </xs:simpleType>
193
194 <!-- Maps to enum lttng_trace_archive_location_relay_protocol_type -->
195 <xs:simpleType name="location_relay_protocol_type">
196 <xs:restriction base="xs:string">
197 <xs:enumeration value="TCP" />
198 </xs:restriction>
199 </xs:simpleType>
200
7e66b1b0
JRJ
201 <!-- Maps to the lttng_calibrate_type enum -->
202 <xs:simpleType name="calibrate_type_type">
203 <xs:restriction base="xs:string">
204 <xs:enumeration value="FUNCTION" />
205 </xs:restriction>
206 </xs:simpleType>
207
252bb128
JR
208 <!-- Maps to the lttng_event_rule_kernel_syscall_emission_site enum -->
209 <xs:simpleType name="event_rule_kernel_syscall_emission_site">
210 <xs:restriction base="xs:string">
211 <xs:enumeration value="entry+exit" />
212 <xs:enumeration value="entry" />
213 <xs:enumeration value="exit" />
214 </xs:restriction>
215 </xs:simpleType>
216
217 <!-- Maps to the lttng_userspace_probe_location_function_instrumentation_type enum -->
218 <xs:simpleType name="userspace_probe_location_function_instrumentation">
219 <xs:restriction base="xs:string">
220 <xs:enumeration value="ENTRY" />
221 </xs:restriction>
222 </xs:simpleType>
223
224 <!-- Maps to the lttng_userspace_probe_location_lookup_method enum -->
225 <xs:simpleType name="userspace_probe_location_lookup_method">
226 <xs:restriction base="xs:string">
227 <xs:enumeration value="FUNCTION-DEFAULT" />
228 <xs:enumeration value="FUNCTION-ELF" />
229 <xs:enumeration value="TRACEPOINT-SDT" />
230 </xs:restriction>
231 </xs:simpleType>
232
c5e38b74
JR
233 <!-- Maps to the lttng_event_probe_attr struct -->
234 <xs:complexType name="event_probe_attributes_type">
235 <xs:all>
00440276
JG
236 <xs:element name="address" type="tns:uint64_type" minOccurs="0" />
237 <xs:element name="offset" type="tns:uint64_type" minOccurs="0" />
238 <xs:element name="symbol_name" type="tns:name_type" minOccurs="0" />
c5e38b74
JR
239 </xs:all>
240 </xs:complexType>
241
242 <!-- Maps to the lttng_event_function_attr struct -->
243 <xs:complexType name="event_ftrace_attributes_type">
244 <xs:all>
00440276 245 <xs:element name="symbol_name" type="tns:name_type" />
c5e38b74
JR
246 </xs:all>
247 </xs:complexType>
248
249 <!-- Maps to per event type configuration -->
250 <xs:complexType name="event_attributes_type">
251 <xs:choice>
00440276
JG
252 <xs:element name="probe_attributes" type="tns:event_probe_attributes_type" />
253 <xs:element name="function_attributes" type="tns:event_ftrace_attributes_type" />
c5e38b74
JR
254 </xs:choice>
255 </xs:complexType>
256
f4a088f7 257 <!-- Maps to exclusion type -->
89476427
JRJ
258 <xs:complexType name="event_exclusion_list_type">
259 <xs:sequence>
260 <xs:element name="exclusion" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
261 </xs:sequence>
262 </xs:complexType>
263
c5e38b74
JR
264 <!-- Maps to lttng_event struct -->
265 <xs:complexType name="event_type">
266 <xs:all>
00440276
JG
267 <xs:element name="type" type="tns:event_type_type" default="TRACEPOINT" minOccurs="0" />
268 <xs:element name="name" type="tns:name_type" minOccurs="0" />
269 <xs:element name="loglevel_type" type="tns:loglevel_type" default="ALL" minOccurs="0" />
270 <xs:element name="loglevel" type="tns:loglevel_string_type" default="" minOccurs="0" />
c5e38b74 271 <xs:element name="enabled" type="xs:boolean" default="false" minOccurs="0" />
7b4aa11d 272 <xs:element name="filter_expression" type="xs:string" minOccurs="0" />
00440276
JG
273 <xs:element name="exclusions" type="tns:event_exclusion_list_type" minOccurs="0"/>
274 <xs:element name="attributes" type="tns:event_attributes_type" minOccurs="0" />
275 <xs:element name="event_fields" type="tns:event_fields_type" minOccurs="0" />
89476427 276 <xs:element name="success" type="xs:boolean" minOccurs="0" />
c5e38b74
JR
277 </xs:all>
278 </xs:complexType>
279
280 <!-- Maps to mi_lttng_version struct -->
281 <xs:complexType name="version_type">
282 <xs:all>
00440276
JG
283 <xs:element name="name" type="tns:name_type" />
284 <xs:element name="string" type="tns:name_type" />
285 <xs:element name="major" type="tns:uint32_type" />
c5e38b74 286 <xs:element name="url" type="xs:string" />
00440276 287 <xs:element name="minor" type="tns:uint32_type" />
314d5222 288 <xs:element name="commit" type="xs:string" />
c5e38b74 289 <xs:element name="license" type="xs:string" />
00440276 290 <xs:element name="patchLevel" type="tns:uint32_type" />
c5e38b74
JR
291 <xs:element name="description" type="xs:string" />
292 </xs:all>
293 </xs:complexType>
294
f4a088f7 295 <!-- Maps to an array of event -->
c5e38b74
JR
296 <xs:complexType name="event_list_type">
297 <xs:sequence>
00440276 298 <xs:element name="event" type="tns:event_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
299 </xs:sequence>
300 </xs:complexType>
301
302 <!-- Maps to the lttng_domain_type enum -->
303 <xs:simpleType name="domain_type_type">
304 <xs:restriction base="xs:string">
305 <xs:enumeration value="KERNEL"/>
306 <xs:enumeration value="UST"/>
307 <xs:enumeration value="JUL"/>
e4d12c27 308 <xs:enumeration value="LOG4J"/>
0e115563 309 <xs:enumeration value="PYTHON"/>
c5e38b74
JR
310 </xs:restriction>
311 </xs:simpleType>
312
313 <!-- Maps to the lttng_buffer_type enum -->
314 <xs:simpleType name="domain_buffer_type">
315 <xs:restriction base="xs:string">
316 <xs:enumeration value="PER_PID"/>
317 <xs:enumeration value="PER_UID"/>
318 <xs:enumeration value="GLOBAL"/>
319 </xs:restriction>
320 </xs:simpleType>
321
f4a088f7 322 <!-- Maps to the type mode of a channel -->
c5e38b74
JR
323 <xs:simpleType name="channel_overwrite_mode_type">
324 <xs:restriction base="xs:string">
325 <xs:enumeration value="DISCARD" />
326 <xs:enumeration value="OVERWRITE" />
327 </xs:restriction>
328 </xs:simpleType>
329
330 <!-- Maps to the lttng_event_output enum -->
331 <xs:simpleType name="event_output_type">
332 <xs:restriction base="xs:string">
333 <xs:enumeration value="SPLICE" />
334 <xs:enumeration value="MMAP" />
335 </xs:restriction>
336 </xs:simpleType>
337
bf239d4c
JR
338 <!-- map to a pid -->
339 <xs:complexType name="pid_type">
c5e38b74 340 <xs:all>
bf239d4c 341 <xs:element name="id" type="xs:int" />
00440276
JG
342 <xs:element name="name" type="tns:name_type" />
343 <xs:element name="events" type="tns:event_list_type" minOccurs="0" />
c5e38b74
JR
344 </xs:all>
345 </xs:complexType>
346
bf239d4c 347 <!-- maps to an array of pid -->
c5e38b74
JR
348 <xs:complexType name="pids_type">
349 <xs:sequence>
00440276 350 <xs:element name="pid" type="tns:pid_type" minOccurs="0" maxOccurs="unbounded" />
c12fcec9
JG
351 </xs:sequence>
352 </xs:complexType>
353
354 <xs:simpleType name="pidbyint">
355 <xs:restriction base="xs:integer">
356 <xs:minInclusive value="0"/>
357 <xs:maxInclusive value="4294967295" />
358 </xs:restriction>
359 </xs:simpleType>
360
159b042f 361 <xs:complexType name="pid_value_type_choice">
83d6d6c4
JR
362 <xs:choice>
363 <xs:element name="id" type="tns:pidbyint" />
83d6d6c4
JR
364 <xs:element name="all" type="xs:boolean" />
365 </xs:choice>
366 </xs:complexType>
c12fcec9 367
159b042f 368 <xs:complexType name="pid_value_type">
c12fcec9 369 <xs:all>
159b042f 370 <xs:element name="type" type="tns:pid_value_type_choice" />
c12fcec9
JG
371 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
372 </xs:all>
373 </xs:complexType>
374
159b042f
JG
375 <!-- Maps to a list of pid_process_attr_values-->
376 <xs:complexType name="pid_process_attr_values_type">
c12fcec9 377 <xs:sequence>
159b042f 378 <xs:element name="pid" type="tns:pid_value_type" minOccurs="0" maxOccurs="unbounded"/>
c12fcec9
JG
379 </xs:sequence>
380 </xs:complexType>
381
382 <!-- Maps to a pid_tracker-->
159b042f 383 <xs:complexType name="pid_process_attr_tracker_type">
c12fcec9 384 <xs:all>
159b042f 385 <xs:element name="process_attr_values" type="tns:pid_process_attr_values_type" minOccurs="0" />
83d6d6c4
JR
386 </xs:all>
387 </xs:complexType>
388
389 <xs:simpleType name="vpidbyint">
390 <xs:restriction base="xs:integer">
391 <xs:minInclusive value="0"/>
392 <xs:maxInclusive value="4294967295" />
393 </xs:restriction>
394 </xs:simpleType>
395
159b042f 396 <xs:complexType name="vpid_value_type_choice">
83d6d6c4
JR
397 <xs:choice>
398 <xs:element name="id" type="tns:vpidbyint" />
83d6d6c4
JR
399 <xs:element name="all" type="xs:boolean" />
400 </xs:choice>
401 </xs:complexType>
402
159b042f 403 <xs:complexType name="vpid_value_type">
83d6d6c4 404 <xs:all>
159b042f 405 <xs:element name="type" type="tns:vpid_value_type_choice" minOccurs="0" maxOccurs="1" />
83d6d6c4
JR
406 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
407 </xs:all>
408 </xs:complexType>
409
159b042f
JG
410 <!-- Maps to a list of vpid_process_attr_values-->
411 <xs:complexType name="vpid_process_attr_values_type">
83d6d6c4 412 <xs:sequence>
159b042f 413 <xs:element name="vpid" type="tns:vpid_value_type" minOccurs="0" maxOccurs="unbounded"/>
83d6d6c4
JR
414 </xs:sequence>
415 </xs:complexType>
416
417 <!-- Maps to a vpid_tracker-->
159b042f 418 <xs:complexType name="vpid_process_attr_tracker_type">
83d6d6c4 419 <xs:all>
159b042f 420 <xs:element name="process_attr_values" type="tns:vpid_process_attr_values_type" minOccurs="0" />
83d6d6c4
JR
421 </xs:all>
422 </xs:complexType>
423
424 <xs:simpleType name="uidbyint">
425 <xs:restriction base="xs:integer">
426 <xs:minInclusive value="0"/>
427 <xs:maxInclusive value="4294967295" />
428 </xs:restriction>
429 </xs:simpleType>
430
159b042f 431 <xs:complexType name="uid_value_type_choice">
83d6d6c4
JR
432 <xs:choice>
433 <xs:element name="id" type="tns:uidbyint" />
434 <xs:element name="name" type="xs:string" />
435 <xs:element name="all" type="xs:boolean" />
436 </xs:choice>
437 </xs:complexType>
438
159b042f 439 <xs:complexType name="uid_value_type">
83d6d6c4 440 <xs:all>
159b042f 441 <xs:element name="type" type="tns:uid_value_type_choice" minOccurs="0" maxOccurs="1" />
83d6d6c4
JR
442 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
443 </xs:all>
444 </xs:complexType>
445
159b042f
JG
446 <!-- Maps to a list of uid_process_attr_values-->
447 <xs:complexType name="uid_process_attr_values_type">
83d6d6c4 448 <xs:sequence>
159b042f 449 <xs:element name="uid" type="tns:uid_value_type" minOccurs="0" maxOccurs="unbounded"/>
83d6d6c4
JR
450 </xs:sequence>
451 </xs:complexType>
452
159b042f
JG
453 <!-- Maps to a uid_process_attr_tracker-->
454 <xs:complexType name="uid_process_attr_tracker_type">
83d6d6c4 455 <xs:all>
159b042f 456 <xs:element name="process_attr_values" type="tns:uid_process_attr_values_type" minOccurs="0" />
83d6d6c4
JR
457 </xs:all>
458 </xs:complexType>
459
460 <xs:simpleType name="vuidbyint">
461 <xs:restriction base="xs:integer">
462 <xs:minInclusive value="0"/>
463 <xs:maxInclusive value="4294967295" />
464 </xs:restriction>
465 </xs:simpleType>
466
159b042f 467 <xs:complexType name="vuid_value_type_choice">
83d6d6c4
JR
468 <xs:choice>
469 <xs:element name="id" type="tns:vuidbyint" />
470 <xs:element name="name" type="xs:string" />
471 <xs:element name="all" type="xs:boolean" />
472 </xs:choice>
473 </xs:complexType>
474
159b042f 475 <xs:complexType name="vuid_value_type">
83d6d6c4 476 <xs:all>
159b042f 477 <xs:element name="type" type="tns:vuid_value_type_choice" minOccurs="0" maxOccurs="1" />
83d6d6c4
JR
478 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
479 </xs:all>
480 </xs:complexType>
481
159b042f
JG
482 <!-- Maps to a list of vuid_process_attr_values-->
483 <xs:complexType name="vuid_process_attr_values_type">
83d6d6c4 484 <xs:sequence>
159b042f 485 <xs:element name="vuid" type="tns:vuid_value_type" minOccurs="0" maxOccurs="unbounded"/>
83d6d6c4
JR
486 </xs:sequence>
487 </xs:complexType>
488
159b042f
JG
489 <!-- Maps to a vuid_process_attr_tracker-->
490 <xs:complexType name="vuid_process_attr_tracker_type">
83d6d6c4 491 <xs:all>
159b042f 492 <xs:element name="process_attr_values" type="tns:vuid_process_attr_values_type" minOccurs="0" />
83d6d6c4
JR
493 </xs:all>
494 </xs:complexType>
495
496 <xs:simpleType name="gidbyint">
497 <xs:restriction base="xs:integer">
498 <xs:minInclusive value="0"/>
499 <xs:maxInclusive value="4294967295" />
500 </xs:restriction>
501 </xs:simpleType>
502
159b042f 503 <xs:complexType name="gid_value_type_choice">
83d6d6c4
JR
504 <xs:choice>
505 <xs:element name="id" type="tns:gidbyint" />
506 <xs:element name="name" type="xs:string" />
507 <xs:element name="all" type="xs:boolean" />
508 </xs:choice>
509 </xs:complexType>
510
159b042f 511 <xs:complexType name="gid_value_type">
83d6d6c4 512 <xs:all>
159b042f 513 <xs:element name="type" type="tns:gid_value_type_choice" minOccurs="0" maxOccurs="1" />
83d6d6c4
JR
514 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
515 </xs:all>
516 </xs:complexType>
517
159b042f
JG
518 <!-- Maps to a list of gid_process_attr_values-->
519 <xs:complexType name="gid_process_attr_values_type">
83d6d6c4 520 <xs:sequence>
159b042f 521 <xs:element name="gid" type="tns:gid_value_type" minOccurs="0" maxOccurs="unbounded"/>
83d6d6c4
JR
522 </xs:sequence>
523 </xs:complexType>
524
159b042f
JG
525 <!-- Maps to a gid_process_attr_tracker-->
526 <xs:complexType name="gid_process_attr_tracker_type">
83d6d6c4 527 <xs:all>
159b042f 528 <xs:element name="process_attr_values" type="tns:gid_process_attr_values_type" minOccurs="0" />
83d6d6c4
JR
529 </xs:all>
530 </xs:complexType>
531
532 <xs:simpleType name="vgidbyint">
533 <xs:restriction base="xs:integer">
534 <xs:minInclusive value="0"/>
535 <xs:maxInclusive value="4294967295" />
536 </xs:restriction>
537 </xs:simpleType>
538
159b042f 539 <xs:complexType name="vgid_value_type_choice">
83d6d6c4
JR
540 <xs:choice>
541 <xs:element name="id" type="tns:vgidbyint" />
542 <xs:element name="name" type="xs:string" />
543 <xs:element name="all" type="xs:boolean" />
544 </xs:choice>
545 </xs:complexType>
546
159b042f 547 <xs:complexType name="vgid_value_type">
83d6d6c4 548 <xs:all>
159b042f 549 <xs:element name="type" type="tns:vgid_value_type_choice" minOccurs="0" maxOccurs="1" />
83d6d6c4
JR
550 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
551 </xs:all>
552 </xs:complexType>
553
159b042f
JG
554 <!-- Maps to a list of vgid_process_attr_values-->
555 <xs:complexType name="vgid_process_attr_values_type">
83d6d6c4 556 <xs:sequence>
159b042f 557 <xs:element name="vgid" type="tns:vgid_value_type" minOccurs="0" maxOccurs="unbounded"/>
83d6d6c4
JR
558 </xs:sequence>
559 </xs:complexType>
560
159b042f
JG
561 <!-- Maps to a vgid_process_attr_tracker-->
562 <xs:complexType name="vgid_process_attr_tracker_type">
83d6d6c4 563 <xs:all>
159b042f 564 <xs:element name="process_attr_values" type="tns:vgid_process_attr_values_type" minOccurs="0" />
c12fcec9
JG
565 </xs:all>
566 </xs:complexType>
567
159b042f
JG
568 <!-- Maps to a list of process_attr_trackers-->
569 <xs:complexType name="process_attr_trackers_type">
83d6d6c4
JR
570 <xs:sequence>
571 <xs:choice minOccurs="0" maxOccurs="unbounded">
159b042f
JG
572 <xs:element name="pid_process_attr_tracker" type="tns:pid_process_attr_tracker_type" maxOccurs="1" />
573 <xs:element name="vpid_process_attr_tracker" type="tns:vpid_process_attr_tracker_type" maxOccurs="1" />
574 <xs:element name="uid_process_attr_tracker" type="tns:uid_process_attr_tracker_type" maxOccurs="1" />
575 <xs:element name="vuid_process_attr_tracker" type="tns:vuid_process_attr_tracker_type" maxOccurs="1" />
576 <xs:element name="gid_process_attr_tracker" type="tns:gid_process_attr_tracker_type" maxOccurs="1" />
577 <xs:element name="vgid_process_attr_tracker" type="tns:vgid_process_attr_tracker_type" maxOccurs="1" />
83d6d6c4 578 </xs:choice>
c5e38b74
JR
579 </xs:sequence>
580 </xs:complexType>
581
582 <!-- Maps to struct lttng_domain and contains channels -->
583 <xs:complexType name="domain_type">
584 <xs:all>
00440276
JG
585 <xs:element name="type" type="tns:domain_type_type" />
586 <xs:element name="buffer_type" type="tns:domain_buffer_type" />
587 <xs:element name="pids" type="tns:pids_type" minOccurs="0" />
588 <xs:element name="channels" type="tns:channels_type" minOccurs="0" />
589 <xs:element name="events" type="tns:event_list_type" minOccurs="0" />
159b042f 590 <xs:element name="process_attr_trackers" type="tns:process_attr_trackers_type" minOccurs="0" />
c5e38b74
JR
591 </xs:all>
592 </xs:complexType>
593
594 <!-- Maps to struct lttng_channel -->
595 <xs:complexType name="channel_type">
596 <xs:all>
00440276 597 <xs:element name="name" type="tns:name_type" />
f4a088f7 598 <xs:element name="enabled" type="xs:boolean" default="true" minOccurs="0" />
00440276
JG
599 <xs:element name="attributes" type="tns:channel_attributes_type" minOccurs="0" />
600 <xs:element name="events" type="tns:event_list_type" minOccurs="0" />
9618049b 601 <xs:element name="success" type="xs:boolean" default="false" minOccurs="0" />
c5e38b74
JR
602 </xs:all>
603 </xs:complexType>
604
605 <!-- Maps to struct lttng_channel_attr -->
606 <xs:complexType name="channel_attributes_type">
607 <xs:all>
00440276
JG
608 <xs:element name="overwrite_mode" type="tns:channel_overwrite_mode_type" default="DISCARD" minOccurs="0" />
609 <xs:element name="subbuffer_size" type="tns:uint64_type" minOccurs="0" /> <!-- bytes -->
610 <xs:element name="subbuffer_count" type="tns:uint64_type" default="4" minOccurs="0" />
611 <xs:element name="switch_timer_interval" type="tns:uint32_type" default="0" minOccurs="0" /> <!-- usec -->
612 <xs:element name="read_timer_interval" type="tns:uint32_type" /> <!-- usec -->
613 <xs:element name="output_type" type="tns:event_output_type" />
614 <xs:element name="tracefile_size" type="tns:uint64_type" default="0" minOccurs="0" /> <!-- bytes -->
615 <xs:element name="tracefile_count" type="tns:uint64_type" default="0" minOccurs="0" />
616 <xs:element name="live_timer_interval" type="tns:uint32_type" default="0" minOccurs="0" /> <!-- usec -->
fb83fe64
JD
617 <xs:element name="discarded_events" type="tns:uint64_type" default="0" minOccurs="0" />
618 <xs:element name="lost_packets" type="tns:uint64_type" default="0" minOccurs="0" />
cf0bcb51 619 <xs:element name="monitor_timer_interval" type="tns:uint64_type" default="0" minOccurs="0" />
491d1539 620 <xs:element name="blocking_timeout" type="tns:blocking_timeout_type" default="0" minOccurs="0" />
c5e38b74
JR
621 </xs:all>
622 </xs:complexType>
623
50534d6f
JRJ
624 <!-- Maps to struct lttng_snapshot_output -->
625 <xs:complexType name="snapshot_type">
626 <xs:all>
00440276
JG
627 <xs:element name="id" type="tns:uint32_type" minOccurs="0" />
628 <xs:element name="max_size" type="tns:uint64_type" minOccurs="0" />
629 <xs:element name="name" type="tns:name_type" minOccurs="0" />
630 <xs:element name="session_name" type="tns:name_type" minOccurs="0" />
dd89693f
JR
631 <xs:element name="ctrl_url" type="xs:string" minOccurs="0" />
632 <xs:element name="data_url" type="xs:string" minOccurs="0" />
50534d6f
JRJ
633 </xs:all>
634 </xs:complexType>
635
636 <xs:complexType name="snapshots_type">
637 <xs:sequence>
00440276 638 <xs:element name="snapshot" type="tns:snapshot_type" minOccurs="0" maxOccurs="unbounded" />
50534d6f
JRJ
639 </xs:sequence>
640 </xs:complexType>
641
66ea93b1
JG
642 <xs:complexType name="periodic_rotation_schedule_type">
643 <xs:all>
644 <xs:element name="time_us" type="tns:uint64_type" minOccurs="0" />
645 </xs:all>
646 </xs:complexType>
647
648 <xs:complexType name="size_threshold_rotation_schedule_type">
649 <xs:all>
650 <xs:element name="bytes" type="tns:uint64_type" minOccurs="0" />
651 </xs:all>
652 </xs:complexType>
653
654 <xs:complexType name="rotation_schedule_type">
655 <xs:sequence>
656 <xs:choice maxOccurs="unbounded">
657 <xs:element name="periodic" type="tns:periodic_rotation_schedule_type" maxOccurs="unbounded" />
658 <xs:element name="size_threshold" type="tns:size_threshold_rotation_schedule_type" maxOccurs="unbounded" />
659 </xs:choice>
660 </xs:sequence>
661 </xs:complexType>
662
c5e38b74
JR
663 <xs:complexType name="channels_type">
664 <xs:sequence>
00440276 665 <xs:element name="channel" type="tns:channel_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
666 </xs:sequence>
667 </xs:complexType>
668
f4a088f7 669 <!-- Maps to a lttng_session -->
c5e38b74
JR
670 <xs:complexType name="session_type">
671 <xs:all>
00440276 672 <xs:element name="name" type="tns:name_type" />
dd89693f 673 <xs:element name="path" type="xs:string" minOccurs="0" />
1734c658 674 <xs:element name="enabled" type="xs:boolean" default="false" minOccurs="0" />
00440276
JG
675 <xs:element name="snapshot_mode" type="tns:uint32_type" minOccurs="0" />
676 <xs:element name="live_timer_interval" type="tns:uint32_type" minOccurs="0" />
677 <xs:element name="channels" type="tns:channels_type" minOccurs="0" />
678 <xs:element name="domains" type="tns:domains_type" minOccurs="0" />
679 <xs:element name="snapshots" type="tns:snapshots_type" minOccurs="0" />
66ea93b1 680 <xs:element name="rotation_schedules" type="tns:rotation_schedule_type" minOccurs="0" />
c5e38b74
JR
681 </xs:all>
682 </xs:complexType>
683
f4a088f7 684 <!-- Maps to a lttng_event_field -->
c5e38b74
JR
685 <xs:complexType name="event_field_type">
686 <xs:all>
00440276
JG
687 <xs:element name="name" type="tns:name_type" />
688 <xs:element name="type" type="tns:event_field_type_type" />
f4a088f7 689 <xs:element name="nowrite" type="xs:int" />
c5e38b74
JR
690 </xs:all>
691 </xs:complexType>
692
17c4550a 693 <!-- Maps to the save command -->
1734c658
JRJ
694 <xs:complexType name="save_type">
695 <xs:all>
00440276 696 <xs:element name="session" type="tns:session_type" />
dd89693f 697 <xs:element name="path" type="xs:string" />
1734c658
JRJ
698 </xs:all>
699 </xs:complexType>
700
17c4550a 701 <!-- Maps to the load command -->
1734c658
JRJ
702 <xs:complexType name="load_type">
703 <xs:all>
00440276 704 <xs:element name="session" type="tns:session_type" />
dd89693f 705 <xs:element name="path" type="xs:string" />
23cb2d55
JR
706 <xs:element name="overrides" type="tns:overrides_type" />
707 </xs:all>
708 </xs:complexType>
709
710 <!-- Maps to the override parameters of the load command -->
711 <xs:complexType name="overrides_type">
712 <xs:all>
713 <xs:element name="name" type="tns:name_type" minOccurs="0" />
714 <xs:element name="url" type="xs:string" minOccurs="0" />
1734c658
JRJ
715 </xs:all>
716 </xs:complexType>
c5e38b74 717
7e66b1b0
JRJ
718 <!-- Maps to struct lttng_calibrate -->
719 <xs:complexType name="calibrate_type">
720 <xs:all>
00440276 721 <xs:element name="type" type="tns:calibrate_type_type" />
7e66b1b0
JRJ
722 </xs:all>
723 </xs:complexType>
724
17c4550a 725 <!-- Maps to lttng_event_perf_counter_ctx -->
89b72577
JRJ
726 <xs:complexType name="perf_counter_context_type">
727 <xs:all>
8d40c39b
JG
728 <xs:element name="type" type="tns:uint32_type" />
729 <xs:element name="config" type="tns:uint64_type" />
730 <xs:element name="name" type="tns:name_type" />
89b72577
JRJ
731 </xs:all>
732 </xs:complexType>
733
8d40c39b
JG
734 <!-- Maps to app_ctx -->
735 <xs:complexType name="app_context_type">
89b72577 736 <xs:all>
8d40c39b
JG
737 <xs:element name="provider_name" type="xs:string"/>
738 <xs:element name="ctx_name" type="xs:string"/>
89b72577
JRJ
739 </xs:all>
740 </xs:complexType>
741
8d40c39b
JG
742 <!-- Maps to lttng_event_context -->
743 <xs:complexType name="context_type">
59deec0c
JR
744 <xs:sequence>
745 <xs:choice>
746 <xs:element name="type" type="tns:context_type_type"/>
747 <xs:element name="perf" type="tns:perf_counter_context_type"/>
748 <xs:element name="app" type="tns:app_context_type"/>
749 </xs:choice>
750 <xs:element name="symbol" type="xs:string" minOccurs="0" />
751 </xs:sequence>
8d40c39b
JG
752 </xs:complexType>
753
f4a088f7 754 <!-- Maps to an array of domain -->
c5e38b74
JR
755 <xs:complexType name="domains_type">
756 <xs:sequence>
00440276 757 <xs:element name="domain" type="tns:domain_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
758 </xs:sequence>
759 </xs:complexType>
760
f4a088f7 761 <!-- Maps to an array of session -->
c5e38b74
JR
762 <xs:complexType name="sessions_type">
763 <xs:sequence>
00440276 764 <xs:element name="session" type="tns:session_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
765 </xs:sequence>
766 </xs:complexType>
767
f4a088f7 768 <!-- Maps to an array of event_field -->
c5e38b74
JR
769 <xs:complexType name="event_fields_type">
770 <xs:sequence>
00440276 771 <xs:element name="event_field" type="tns:event_field_type" minOccurs="0" maxOccurs="unbounded" />
c5e38b74
JR
772 </xs:sequence>
773 </xs:complexType>
774
f4a088f7 775 <!-- Maps to an array of context -->
89b72577
JRJ
776 <xs:complexType name="contexts_type">
777 <xs:sequence>
00440276 778 <xs:element name="context" type="tns:context_type" minOccurs="0" maxOccurs="unbounded" />
89b72577
JRJ
779 </xs:sequence>
780 </xs:complexType>
781
54897b57 782 <!-- Maps to an action during snapshot command -->
d0adede2 783 <xs:complexType name="snapshot_cmd_type">
50534d6f 784 <xs:sequence>
d0adede2 785 <xs:element name="name" type="tns:snapshot_action_type" minOccurs="0" />
00440276 786 <xs:element name="output" type="tns:output_type" minOccurs="0" />
50534d6f
JRJ
787 </xs:sequence>
788 </xs:complexType>
789
790 <!-- Type of snapshot commands -->
d0adede2 791 <xs:simpleType name="snapshot_action_type">
50534d6f 792 <xs:restriction base="xs:string">
f4a088f7
JRJ
793 <xs:enumeration value="list-output" />
794 <xs:enumeration value="del-output" />
795 <xs:enumeration value="add-output" />
796 <xs:enumeration value="record-output" />
50534d6f
JRJ
797 </xs:restriction>
798 </xs:simpleType>
799
54897b57 800 <!-- Maps to an action during metadata command -->
d0adede2 801 <xs:complexType name="metadata_cmd_type">
54897b57 802 <xs:sequence>
d0adede2 803 <xs:element name="name" type="tns:metadata_action_type" minOccurs="0" />
54897b57
JD
804 </xs:sequence>
805 </xs:complexType>
806
807 <!-- Type of metadata commands -->
d0adede2 808 <xs:simpleType name="metadata_action_type">
54897b57
JD
809 <xs:restriction base="xs:string">
810 <xs:enumeration value="regenerate" />
811 </xs:restriction>
812 </xs:simpleType>
813
d0adede2
JG
814 <!-- Type of regenerate commands -->
815 <xs:simpleType name="regenerate_action_type">
816 <xs:restriction base="xs:string">
817 <xs:enumeration value="metadata" />
818 <xs:enumeration value="statedump" />
819 </xs:restriction>
820 </xs:simpleType>
821
822 <!-- Type of regenerate command -->
823 <xs:complexType name="regenerate_cmd_type">
824 <xs:sequence>
825 <xs:element name="name" type="tns:regenerate_action_type" minOccurs="0" />
826 </xs:sequence>
827 </xs:complexType>
828
91c4d516
JG
829 <xs:complexType name="local_location_type">
830 <xs:sequence>
831 <xs:element name="absolute_path" type="xs:string" minOccurs="1" />
832 </xs:sequence>
833 </xs:complexType>
834
835 <xs:complexType name="relay_location_type">
836 <xs:sequence>
837 <xs:element name="host" type="xs:string" minOccurs="1" />
838 <xs:element name="control_port" type="xs:int" minOccurs="0" />
839 <xs:element name="data_port" type="xs:int" minOccurs="0" />
840 <xs:element name="protocol" type="tns:location_relay_protocol_type" minOccurs="1" />
841 <xs:element name="relative_path" type="xs:string" minOccurs="0" />
842 </xs:sequence>
843 </xs:complexType>
844
845 <xs:complexType name="location_type">
846 <xs:choice>
847 <xs:element name="local" type="tns:local_location_type" minOccurs="0" />
848 <xs:element name="relay" type="tns:relay_location_type" minOccurs="0" />
849 </xs:choice>
850 </xs:complexType>
851
79344fee 852 <!-- Maps to the rotate command -->
91c4d516
JG
853 <xs:complexType name="rotate_type">
854 <xs:sequence>
855 <xs:element name="session_name" type="tns:name_type" minOccurs="1" />
856 <xs:element name="state" type="tns:rotation_state_type" minOccurs="1" />
857 <xs:element name="location" type="tns:location_type" minOccurs="0" />
858 </xs:sequence>
79344fee
JG
859 </xs:complexType>
860
66ea93b1 861 <xs:complexType name="rotation_schedule_result_type">
79344fee 862 <xs:sequence>
66ea93b1
JG
863 <xs:element name="rotation_schedule" type="tns:rotation_schedule_type" minOccurs="1" />
864 <xs:element name="success" type="xs:boolean" minOccurs="1"/>
79344fee
JG
865 </xs:sequence>
866 </xs:complexType>
867
66ea93b1
JG
868 <!-- Maps to the enable/disable-rotation commands -->
869 <xs:complexType name="rotation_schedule_cmd_type">
79344fee 870 <xs:sequence>
66ea93b1
JG
871 <xs:element name="session_name" type="tns:name_type" minOccurs="1" />
872 <xs:element name="rotation_schedule_result" type="tns:rotation_schedule_result_type" minOccurs="1" maxOccurs="unbounded" />
79344fee
JG
873 </xs:sequence>
874 </xs:complexType>
875
252bb128
JR
876 <!-- Maps to a lttng_rate_policy subtypes -->
877 <xs:element name="rate_policy_sub_type" abstract="true"/>
878 <xs:element name="rate_policy_every_n" type="tns:rate_policy_every_n_type" substitutionGroup="tns:rate_policy_sub_type" />
879 <xs:element name="rate_policy_once_after_n" type="tns:rate_policy_once_after_n_type" substitutionGroup="tns:rate_policy_sub_type" />
880 <xs:complexType name="rate_policy_every_n_type">
881 <xs:all>
882 <xs:element name="interval" type="tns:uint64_type" minOccurs="1" />
883 </xs:all>
884 </xs:complexType>
885 <xs:complexType name="rate_policy_once_after_n_type">
886 <xs:all>
887 <xs:element name="threshold" type="tns:uint64_type" minOccurs="1" />
888 </xs:all>
889 </xs:complexType>
890
891 <!-- Maps to a lttng_rate_policy -->
892 <xs:complexType name="rate_policy_type">
893 <xs:all>
894 <xs:element ref="tns:rate_policy_sub_type" minOccurs="1" />
895 </xs:all>
896 </xs:complexType>
897
898 <!-- Maps to a lttng_action subtypes -->
899 <xs:element name="action_sub_type" abstract="true"/>
900 <xs:element name="action_list" type="tns:action_list_type" substitutionGroup="tns:action_sub_type" />
901 <xs:element name="action_notify" type="tns:action_notify_type" substitutionGroup="tns:action_sub_type" />
902 <xs:element name="action_rotate_session" type="tns:action_rotate_session_type" substitutionGroup="tns:action_sub_type" />
903 <xs:element name="action_snapshot_session" type="tns:action_snapshot_session_type" substitutionGroup="tns:action_sub_type" />
904 <xs:element name="action_start" type="tns:action_start_session_type" substitutionGroup="tns:action_sub_type" />
905 <xs:element name="action_stop" type="tns:action_stop_session_type" substitutionGroup="tns:action_sub_type" />
906
907 <!-- Maps to a lttng_action list -->
908 <xs:complexType name="action_list_type">
909 <xs:sequence>
910 <xs:element name="action" type="tns:action_type" minOccurs="0" maxOccurs="unbounded" />
911 </xs:sequence>
912 </xs:complexType>
913
914 <!-- Maps to a lttng_action notify -->
915 <xs:complexType name="action_notify_type">
916 <xs:all>
917 <xs:element name="rate_policy" type="tns:rate_policy_type" minOccurs="1" />
918 </xs:all>
919 </xs:complexType>
920
921 <!-- Maps to a lttng_action rotate session -->
922 <xs:complexType name="action_rotate_session_type">
923 <xs:all>
924 <xs:element name="rate_policy" type="tns:rate_policy_type" minOccurs="1" />
925 <xs:element name="session_name" type="xs:string" minOccurs="1" />
926 </xs:all>
927 </xs:complexType>
928
929 <!-- Maps to struct lttng_snapshot_output tailored to action MI printing, aka without lttng-sessiond state. -->
930 <xs:complexType name="action_snapshot_output_type">
931 <xs:all>
932 <xs:element name="max_size" type="tns:uint64_type" minOccurs="0" />
933 <xs:element name="name" type="tns:name_type" minOccurs="0" />
934 <xs:element name="session_name" type="tns:name_type" minOccurs="0" />
935 <xs:element name="ctrl_url" type="xs:string" minOccurs="0" />
936 <xs:element name="data_url" type="xs:string" minOccurs="0" />
937 </xs:all>
938 </xs:complexType>
939
940 <!-- Maps to a lttng_action snapshot session -->
941 <xs:complexType name="action_snapshot_session_type">
942 <xs:all>
943 <xs:element name="rate_policy" type="tns:rate_policy_type" minOccurs="1" />
944 <xs:element name="session_name" type="xs:string" minOccurs="1" />
945 <xs:element name="output" type="tns:action_snapshot_output_type" minOccurs="0" />
946 </xs:all>
947 </xs:complexType>
948
949 <!-- Maps to a lttng_action start session -->
950 <xs:complexType name="action_start_session_type">
951 <xs:all>
952 <xs:element name="rate_policy" type="tns:rate_policy_type" minOccurs="1" />
953 <xs:element name="session_name" type="xs:string" minOccurs="1" />
954 </xs:all>
955 </xs:complexType>
956
957 <!-- Maps to a lttng_action stop session -->
958 <xs:complexType name="action_stop_session_type">
959 <xs:all>
960 <xs:element name="rate_policy" type="tns:rate_policy_type" minOccurs="1" />
961 <xs:element name="session_name" type="xs:string" minOccurs="1" />
962 </xs:all>
963 </xs:complexType>
964
965 <!-- Maps to a lttng_action -->
966 <xs:complexType name="action_type">
967 <xs:all>
968 <xs:element ref="tns:action_sub_type" minOccurs="1" />
969 <xs:element name="error_query_results" type="tns:error_query_results_type" minOccurs="0"/>
970 </xs:all>
971 </xs:complexType>
972
973 <!-- Maps to lttng_kernel_probe_location sub types -->
974 <xs:element name="kernel_probe_location_sub_type" abstract="true"/>
975 <xs:element name="kernel_probe_location_address" type="tns:kernel_probe_location_address_type" substitutionGroup="tns:kernel_probe_location_sub_type" />
976 <xs:element name="kernel_probe_location_symbol_offset" type="tns:kernel_probe_location_symbol_offset_type" substitutionGroup="tns:kernel_probe_location_sub_type" />
977
978 <!-- Maps to a lttng_kernel_probe_location_address. -->
979 <xs:complexType name="kernel_probe_location_address_type">
980 <xs:all>
981 <xs:element name="address" type="tns:uint64_type" minOccurs="1" />
982 </xs:all>
983 </xs:complexType>
984
985 <!-- Maps to a lttng_kernel_probe_location_symbol_offset_type. -->
986 <xs:complexType name="kernel_probe_location_symbol_offset_type">
987 <xs:all>
988 <xs:element name="name" type="xs:string" minOccurs="1" />
989 <xs:element name="offset" type="tns:uint64_type" minOccurs="1" />
990 </xs:all>
991 </xs:complexType>
992
993 <!-- Maps to a lttng_kernel_probe_location. -->
994 <xs:complexType name="kernel_probe_location_type">
995 <xs:all>
996 <xs:element ref="tns:kernel_probe_location_sub_type" minOccurs="1" />
997 </xs:all>
998 </xs:complexType>
999
1000 <!-- Maps to lttng_user_probe_location sub types -->
1001 <xs:element name="userspace_probe_location_sub_type" abstract="true"/>
1002 <xs:element name="userspace_probe_location_function" type="tns:userspace_probe_location_function_type" substitutionGroup="tns:userspace_probe_location_sub_type" />
1003 <xs:element name="userspace_probe_location_tracepoint" type="tns:userspace_probe_location_tracepoint_type" substitutionGroup="tns:userspace_probe_location_sub_type" />
1004
1005 <!-- Maps to lttng_userspace_probe_location_lookup_method sub type -->
1006 <xs:element name="userspace_probe_location_lookup_method_sub_type" abstract="true"/>
1007 <xs:element name="userspace_probe_location_lookup_method_function_default" substitutionGroup="tns:userspace_probe_location_lookup_method_sub_type"> <xs:complexType/> </xs:element>
1008 <xs:element name="userspace_probe_location_lookup_method_function_elf" substitutionGroup="tns:userspace_probe_location_lookup_method_sub_type"> <xs:complexType/> </xs:element>
1009 <xs:element name="userspace_probe_location_lookup_method_tracepoint_sdt" substitutionGroup="tns:userspace_probe_location_lookup_method_sub_type"> <xs:complexType/> </xs:element>
1010
1011 <!-- Maps to a lttng_userspace_probe_location_lookup_method. -->
1012 <xs:complexType name="userspace_probe_location_lookup_method_type">
1013 <xs:all>
1014 <xs:element ref="tns:userspace_probe_location_lookup_method_sub_type" minOccurs="1" />
1015 </xs:all>
1016 </xs:complexType>
1017
1018 <!-- Maps to a lttng_userspace_probe_location_function. -->
1019 <xs:complexType name="userspace_probe_location_function_type">
1020 <xs:all>
1021 <xs:element name="name" type="xs:string" minOccurs="1" />
1022 <xs:element name="binary_path" type="xs:string" minOccurs="1" />
1023 <xs:element name="instrumentation_type" type="tns:userspace_probe_location_function_instrumentation" minOccurs="1" />
1024 <xs:element name="userspace_probe_location_lookup_method" type="tns:userspace_probe_location_lookup_method_type" minOccurs="1" />
1025 </xs:all>
1026 </xs:complexType>
1027
1028 <!-- Maps to a lttng_userspace_probe_location_tracepoint. -->
1029 <xs:complexType name="userspace_probe_location_tracepoint_type">
1030 <xs:all>
1031 <xs:element name="probe_name" type="xs:string" minOccurs="1" />
1032 <xs:element name="provider_name" type="xs:string" minOccurs="1" />
1033 <xs:element name="binary_path" type="xs:string" minOccurs="1" />
1034 <xs:element name="userspace_probe_location_lookup_method" type="tns:userspace_probe_location_lookup_method_type" minOccurs="1" />
1035 </xs:all>
1036 </xs:complexType>
1037
1038 <!-- Maps to a lttng_userspace_probe_location. -->
1039 <xs:complexType name="userspace_probe_location_type">
1040 <xs:all>
1041 <xs:element ref="tns:userspace_probe_location_sub_type" minOccurs="1" />
1042 </xs:all>
1043 </xs:complexType>
1044
1045 <!-- Maps to a lttng_log_level_rule subtypes -->
1046 <xs:element name="log_level_rule_sub_type" abstract="true"/>
1047 <xs:element name="log_level_rule_exactly" type="tns:log_level_rule_generic_type" substitutionGroup="tns:log_level_rule_sub_type" />
1048 <xs:element name="log_level_rule_at_least_as_severe_as" type="tns:log_level_rule_generic_type" substitutionGroup="tns:log_level_rule_sub_type" />
1049
1050 <!-- Maps to a lttng_log_level_rule_*. -->
1051 <xs:complexType name="log_level_rule_generic_type">
1052 <xs:all>
1053 <xs:element name="level" type="xs:integer" minOccurs="1" />
1054 </xs:all>
1055 </xs:complexType>
1056
1057 <!-- Maps to a lttng_log_level_rule. -->
1058 <xs:complexType name="log_level_rule_type">
1059 <xs:all>
1060 <xs:element ref="tns:log_level_rule_sub_type" minOccurs="1" />
1061 </xs:all>
1062 </xs:complexType>
1063
1064 <!-- Maps to a lttng_event_rule subtypes -->
1065 <xs:element name="event_rule_sub_type" abstract="true"/>
1066 <xs:element name="event_rule_jul_logging" type="tns:event_rule_logging_type" substitutionGroup="tns:event_rule_sub_type" />
1067 <xs:element name="event_rule_kernel_kprobe" type="tns:event_rule_kernel_kprobe_type" substitutionGroup="tns:event_rule_sub_type" />
1068 <xs:element name="event_rule_kernel_syscall" type="tns:event_rule_kernel_syscall_type" substitutionGroup="tns:event_rule_sub_type" />
1069 <xs:element name="event_rule_kernel_tracepoint" type="tns:event_rule_kernel_tracepoint_type" substitutionGroup="tns:event_rule_sub_type" />
1070 <xs:element name="event_rule_kernel_uprobe" type="tns:event_rule_kernel_uprobe_type" substitutionGroup="tns:event_rule_sub_type" />
1071 <xs:element name="event_rule_log4j_logging" type="tns:event_rule_logging_type" substitutionGroup="tns:event_rule_sub_type" />
1072 <xs:element name="event_rule_python_logging" type="tns:event_rule_logging_type" substitutionGroup="tns:event_rule_sub_type" />
1073 <xs:element name="event_rule_user_tracepoint" type="tns:event_rule_user_tracepoint_type" substitutionGroup="tns:event_rule_sub_type" />
1074
1075 <!-- Maps to a lttng_event_rule_kernel_kprobe. -->
1076 <xs:complexType name="event_rule_kernel_kprobe_type">
1077 <xs:all>
1078 <xs:element name="event_name" type="xs:string" minOccurs="1" />
1079 <xs:element name="kernel_probe_location" type="tns:kernel_probe_location_type" minOccurs="1" />
1080 </xs:all>
1081 </xs:complexType>
1082
1083 <!-- Maps to a lttng_event_rule_kernel_syscall. -->
1084 <xs:complexType name="event_rule_kernel_syscall_type">
1085 <xs:all>
1086 <xs:element name="emission_site" type="tns:event_rule_kernel_syscall_emission_site" minOccurs="1" />
1087 <xs:element name="name_pattern" type="xs:string" minOccurs="1" />
1088 <xs:element name="filter_expression" type="xs:string" minOccurs="0" />
1089 </xs:all>
1090 </xs:complexType>
1091
1092 <!-- Maps to a lttng_event_rule_kernel_tracepoint. -->
1093 <xs:complexType name="event_rule_kernel_tracepoint_type">
1094 <xs:all>
1095 <xs:element name="name_pattern" type="xs:string" minOccurs="1" />
1096 <xs:element name="filter_expression" type="xs:string" minOccurs="0" />
1097 </xs:all>
1098 </xs:complexType>
1099
1100 <!-- Maps to a lttng_event_rule_kernel_uprobe. -->
1101 <xs:complexType name="event_rule_kernel_uprobe_type">
1102 <xs:all>
1103 <xs:element name="event_name" type="xs:string" minOccurs="1" />
1104 <xs:element name="userspace_probe_location" type="tns:userspace_probe_location_type" minOccurs="1" />
1105 </xs:all>
1106 </xs:complexType>
1107
1108
1109 <!-- Maps to a lttng_event_rule_*_logging. -->
1110 <xs:complexType name="event_rule_logging_type">
1111 <xs:all>
1112 <xs:element name="name_pattern" type="xs:string" minOccurs="1" />
1113 <xs:element name="filter_expression" type="xs:string" minOccurs="0" />
1114 <xs:element name="log_level_rule" type="tns:log_level_rule_type" minOccurs="0" />
1115 </xs:all>
1116 </xs:complexType>
1117
1118 <!-- Maps to exclusion type -->
1119 <xs:complexType name="name_pattern_exclusions_type">
1120 <xs:sequence>
1121 <xs:element name="name_pattern_exclusion" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
1122 </xs:sequence>
1123 </xs:complexType>
1124
1125
1126 <!-- Maps to a lttng_event_rule_user_tracepoint. -->
1127 <xs:complexType name="event_rule_user_tracepoint_type">
1128 <xs:all>
1129 <xs:element name="name_pattern" type="xs:string" minOccurs="1" />
1130 <xs:element name="filter_expression" type="xs:string" minOccurs="0" />
1131 <xs:element name="log_level_rule" type="tns:log_level_rule_type" minOccurs="0" />
1132 <xs:element name="name_pattern_exclusions" type="tns:name_pattern_exclusions_type" minOccurs="0" />
1133 </xs:all>
1134 </xs:complexType>
1135
1136 <!-- Maps to a lttng_event_rule. -->
1137 <xs:complexType name="event_rule_type">
1138 <xs:all>
1139 <xs:element ref="tns:event_rule_sub_type" minOccurs="1" />
1140 </xs:all>
1141 </xs:complexType>
1142
1143 <!-- Maps to a lttng_condition subtypes -->
1144 <xs:element name="condition_sub_type" abstract="true" />
1145 <xs:element name="condition_buffer_usage_high" type="tns:condition_buffer_usage_type" substitutionGroup="tns:condition_sub_type" />
1146 <xs:element name="condition_buffer_usage_low" type="tns:condition_buffer_usage_type" substitutionGroup="tns:condition_sub_type" />
1147 <xs:element name="condition_event_rule_matches" type="tns:condition_event_rule_matches_type" substitutionGroup="tns:condition_sub_type" />
1148 <xs:element name="condition_session_consumed_size" type="tns:condition_session_consumed_size_type" substitutionGroup="tns:condition_sub_type" />
1149 <xs:element name="condition_session_rotation_completed" type="tns:condition_session_rotation_type" substitutionGroup="tns:condition_sub_type" />
1150 <xs:element name="condition_session_rotation_ongoing" type="tns:condition_session_rotation_type" substitutionGroup="tns:condition_sub_type" />
1151
1152 <!-- Allow expression of the threshold in ratio or in bytes -->
1153 <xs:element name="buffer_usage_threshold_sub_type" abstract="true" />
1154 <xs:element name="threshold_bytes" type="tns:uint64_type" substitutionGroup="tns:buffer_usage_threshold_sub_type" />
1155 <xs:element name="threshold_ratio" type="tns:ratio_type" substitutionGroup="tns:buffer_usage_threshold_sub_type" />
1156
1157 <!-- Maps to a lttng_condition buffer usage for both low and high -->
1158 <xs:complexType name="condition_buffer_usage_type">
1159 <xs:all>
1160 <xs:element name="session_name" type="xs:string" minOccurs="1" />
1161 <xs:element name="channel_name" type="xs:string" minOccurs="1" />
1162 <xs:element name="domain" type="tns:domain_type_type" minOccurs="1" />
1163 <xs:element ref="tns:buffer_usage_threshold_sub_type" minOccurs="1" />
1164 </xs:all>
1165 </xs:complexType>
1166
1167 <!-- Maps to lttng_event_expr sub type -->
1168 <xs:element name="event_expr_sub_type" abstract="true" />
1169 <xs:element name="event_expr_payload_field" type="tns:event_expr_payload_field_type" substitutionGroup="tns:event_expr_sub_type" />
1170 <xs:element name="event_expr_channel_context_field" type="tns:event_expr_channel_context_field_type" substitutionGroup="tns:event_expr_sub_type" />
1171 <xs:element name="event_expr_app_specific_context_field" type="tns:event_expr_app_specific_context_field_type" substitutionGroup="tns:event_expr_sub_type" />
1172 <xs:element name="event_expr_array_field_element" type="tns:event_expr_array_field_element_type" substitutionGroup="tns:event_expr_sub_type" />
1173
1174 <!-- Maps to lttng_event_expr payload_field -->
1175 <xs:complexType name="event_expr_payload_field_type">
1176 <xs:all>
1177 <xs:element name="name" type="xs:string" minOccurs="1" />
1178 </xs:all>
1179 </xs:complexType>
1180 <!-- Maps to lttng_event_expr context field -->
1181 <xs:complexType name="event_expr_channel_context_field_type">
1182 <xs:all>
1183 <xs:element name="name" type="xs:string" minOccurs="1" />
1184 </xs:all>
1185 </xs:complexType>
1186
1187 <!-- Maps to lttng_event_expr app_specific context field -->
1188 <xs:complexType name="event_expr_app_specific_context_field_type">
1189 <xs:all>
1190 <xs:element name="provider_name" type="xs:string" minOccurs="1" />
1191 <xs:element name="type_name" type="xs:string" minOccurs="1" />
1192 </xs:all>
1193 </xs:complexType>
1194 <!-- Maps to lttng_event_expr array field -->
1195 <xs:complexType name="event_expr_array_field_element_type">
1196 <xs:all>
1197 <xs:element name="index" type="tns:uint64_type" minOccurs="1" />
1198 <xs:element name="event_expr" type="tns:event_expr_type" minOccurs="1" />
1199 </xs:all>
1200 </xs:complexType>
1201
1202 <!-- Maps to a lttng_event_expr -->
1203 <xs:complexType name="event_expr_type">
1204 <xs:all>
1205 <xs:element ref="tns:event_expr_sub_type" minOccurs="1" />
1206 </xs:all>
1207 </xs:complexType>
1208
1209 <!-- Maps to an array of lttng_event_expr aka capture descriptor -->
1210 <xs:complexType name="capture_descriptors_type">
1211 <xs:sequence>
1212 <xs:element name="event_expr" type="tns:event_expr_type" minOccurs="0" maxOccurs="unbounded"/>
1213 </xs:sequence>
1214 </xs:complexType>
1215
1216 <!-- Maps to a lttng_condition event rule matches -->
1217 <xs:complexType name="condition_event_rule_matches_type">
1218 <xs:all>
1219 <xs:element name="capture_descriptors" type="tns:capture_descriptors_type" minOccurs="1" />
1220 <xs:element name="event_rule" type="tns:event_rule_type" minOccurs="1" />
1221 </xs:all>
1222 </xs:complexType>
1223
1224 <!-- Maps to a lttng_condition session consumed size -->
1225 <xs:complexType name="condition_session_consumed_size_type">
1226 <xs:all>
1227 <xs:element name="session_name" type="xs:string" minOccurs="1" />
1228 <xs:element name="threshold_bytes" type="tns:uint64_type" minOccurs="1" />
1229 </xs:all>
1230 </xs:complexType>
1231
1232 <!-- Maps to a lttng_condition session consumed size -->
1233 <xs:complexType name="condition_session_rotation_type">
1234 <xs:all>
1235 <xs:element name="session_name" type="xs:string" minOccurs="1" />
1236 </xs:all>
1237 </xs:complexType>
1238
1239 <!-- Maps to a lttng_condition -->
1240 <xs:complexType name="condition_type">
1241 <xs:all>
1242 <xs:element ref="tns:condition_sub_type" minOccurs="1" />
1243 <xs:element name="error_query_results" type="tns:error_query_results_type" minOccurs="0"/>
1244 </xs:all>
1245 </xs:complexType>
1246
1247 <!-- Maps to lttng_error_query_result sub type -->
1248 <xs:element name="error_query_result_sub_type" abstract="true" />
1249 <xs:element name="error_query_result_counter" type="tns:error_query_result_counter_type" substitutionGroup="tns:error_query_result_sub_type" />
1250
1251 <!-- Maps to lttng_error_query_results -->
1252 <xs:complexType name="error_query_result_counter_type">
1253 <xs:all>
1254 <xs:element name="value" type="tns:uint64_type" minOccurs="1" />
1255 </xs:all>
1256 </xs:complexType>
1257
1258 <!-- Maps to lttng_error_query_result -->
1259 <xs:complexType name="error_query_result_type">
1260 <xs:all>
1261 <xs:element name="name" type="xs:string" minOccurs="1" />
1262 <xs:element name="description" type="xs:string" minOccurs="1" />
1263 <xs:element ref="tns:error_query_result_sub_type" minOccurs="1" />
1264 </xs:all>
1265 </xs:complexType>
1266
1267
1268 <!-- Maps to lttng_error_query_results -->
1269 <xs:complexType name="error_query_results_type">
1270 <xs:sequence>
1271 <xs:element name="error_query_result" type="tns:error_query_result_type" minOccurs="0" maxOccurs="unbounded" />
1272 </xs:sequence>
1273 </xs:complexType>
1274
1275 <!-- Maps to a lttng_trigger -->
1276 <xs:complexType name="trigger_type">
1277 <xs:all>
1278 <xs:element name="action" type="tns:action_type" minOccurs="1" />
1279 <xs:element name="condition" type="tns:condition_type" minOccurs="1" />
1280 <xs:element name="name" type="xs:string" minOccurs="1" />
1281 <xs:element name="owner_uid" type="tns:uidbyint" minOccurs="1"/>
1282 <xs:element name="error_query_results" type="tns:error_query_results_type" minOccurs="0"/>
1283 </xs:all>
1284 </xs:complexType>
1285
1286 <!-- Maps to lttng_triggers -->
1287 <xs:complexType name="triggers_type">
1288 <xs:sequence>
1289 <xs:element name="trigger" type="tns:trigger_type" minOccurs="0" maxOccurs="unbounded" />
1290 </xs:sequence>
1291 </xs:complexType>
1292
c5e38b74
JR
1293 <xs:complexType name="output_type">
1294 <xs:choice>
00440276 1295 <xs:element name="calibrate" type="tns:calibrate_type" minOccurs="0" />
bf8ac2ea 1296 <xs:element name="channel" type="tns:channel_type" minOccurs="0" />
00440276 1297 <xs:element name="channels" type="tns:channels_type" minOccurs="0" />
bf8ac2ea
JR
1298 <xs:element name="contexts" type="tns:contexts_type" minOccurs="0" />
1299 <xs:element name="domains" type="tns:domains_type" minOccurs="0" />
00440276 1300 <xs:element name="events" type="tns:event_list_type" minOccurs="0" />
bf8ac2ea 1301 <xs:element name="load" type="tns:load_type" minOccurs="0" />
d0adede2 1302 <xs:element name="metadata_action" type="tns:metadata_cmd_type" minOccurs="0" />
bf8ac2ea 1303 <xs:element name="process_attr_trackers" type="tns:process_attr_trackers_type" minOccurs="0" />
d0adede2 1304 <xs:element name="regenerate_action" type="tns:regenerate_cmd_type" minOccurs="0" />
91c4d516 1305 <xs:element name="rotation" type="tns:rotate_type" minOccurs="0" />
66ea93b1 1306 <xs:element name="rotation_schedule_results" type="tns:rotation_schedule_cmd_type" minOccurs="0" />
bf8ac2ea
JR
1307 <xs:element name="save" type="tns:save_type" minOccurs="0" />
1308 <xs:element name="session" type="tns:session_type" minOccurs="0" />
1309 <xs:element name="sessions" type="tns:sessions_type" minOccurs="0" />
1310 <xs:element name="snapshot" type="tns:snapshot_type" minOccurs="0" />
1311 <xs:element name="snapshot_action" type="tns:snapshot_cmd_type" minOccurs="0" />
252bb128
JR
1312 <xs:element name="trigger" type="tns:trigger_type" minOccurs="0" />
1313 <xs:element name="triggers" type="tns:triggers_type" minOccurs="0" />
bf8ac2ea 1314 <xs:element name="version" type="tns:version_type" minOccurs="0" />
c5e38b74
JR
1315 </xs:choice>
1316 </xs:complexType>
1317
1318 <!-- Maps to the mi_lttng commands -->
1319 <xs:simpleType name="command_string_type">
1320 <xs:restriction base="xs:string">
33dc3f63 1321 <xs:enumeration value="add-context" />
252bb128 1322 <xs:enumeration value="add-trigger" />
33dc3f63
JR
1323 <xs:enumeration value="calibrate" />
1324 <xs:enumeration value="clear" />
37d03ff7 1325 <xs:enumeration value="create" />
65f25c66 1326 <xs:enumeration value="destroy" />
33dc3f63
JR
1327 <xs:enumeration value="disable-channel" />
1328 <xs:enumeration value="disable-event" />
1329 <xs:enumeration value="disable-rotation" />
acc09215 1330 <xs:enumeration value="enable-channel" />
89476427 1331 <xs:enumeration value="enable-event" />
33dc3f63
JR
1332 <xs:enumeration value="enable-rotation" />
1333 <xs:enumeration value="list" />
252bb128 1334 <xs:enumeration value="list-trigger" />
33dc3f63 1335 <xs:enumeration value="load" />
54897b57 1336 <xs:enumeration value="metadata" />
d0adede2 1337 <xs:enumeration value="regenerate" />
252bb128 1338 <xs:enumeration value="remove-trigger" />
d68c9a04 1339 <xs:enumeration value="rotate" />
33dc3f63
JR
1340 <xs:enumeration value="save" />
1341 <xs:enumeration value="set-session" />
1342 <xs:enumeration value="snapshot" />
1343 <xs:enumeration value="start" />
1344 <xs:enumeration value="stop" />
1345 <xs:enumeration value="track" />
1346 <xs:enumeration value="untrack" />
1347 <xs:enumeration value="version" />
c5e38b74
JR
1348 </xs:restriction>
1349 </xs:simpleType>
1350
1351 <xs:element name="command">
1352 <xs:complexType>
1353 <xs:all>
00440276
JG
1354 <xs:element name="name" type="tns:command_string_type" maxOccurs="1" />
1355 <xs:element name="output" type="tns:output_type" maxOccurs="1" />
1734c658 1356 <xs:element name="success" type="xs:boolean" minOccurs="0" maxOccurs="1" />
c5e38b74 1357 </xs:all>
8a7db2af 1358 <xs:attribute name="schemaVersion" type="xs:string" use="required"/>
c5e38b74
JR
1359 </xs:complexType>
1360 </xs:element>
1361</xs:schema>
This page took 0.114232 seconds and 4 git commands to generate.