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