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