blob: c2803daea6afc173715c969415cfd6a763619b35 [file] [log] [blame]
Ed Tanous530520e2019-01-02 13:41:37 -08001<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################ -->
4<!--# Redfish Schema: MetricReportDefinition v1.0.0-->
5<!--# -->
6<!--# For a detailed change log, see the README file contained in the DSP8010 bundle, -->
7<!--# available at http://www.dmtf.org/standards/redfish -->
8<!--# Copyright 2014-2018 DMTF. -->
9<!--# For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright -->
10<!--################################################################################ -->
11<!---->
12<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
13
14 <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
15 <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData"/>
16 </edmx:Reference>
17 <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Capabilities.V1.xml">
18 <edmx:Include Namespace="Org.OData.Capabilities.V1" Alias="Capabilities"/>
19 </edmx:Reference>
20 <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
21 <edmx:Include Namespace="Resource"/>
22 <edmx:Include Namespace="Resource.v1_0_0"/>
23 </edmx:Reference>
24 <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
25 <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
26 <edmx:Include Namespace="Validation.v1_0_0" Alias="Validation"/>
27 </edmx:Reference>
28 <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/MetricReport_v1.xml">
29 <edmx:Include Namespace="MetricReport"/>
30 </edmx:Reference>
31 <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Schedule_v1.xml">
32 <edmx:Include Namespace="Schedule"/>
33 </edmx:Reference>
34
35 <edmx:DataServices>
36
37 <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="MetricReportDefinition">
38 <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
39
40 <EntityType Name="MetricReportDefinition" BaseType="Resource.v1_0_0.Resource" Abstract="true">
41 <Annotation Term="OData.Description" String="A set of metrics that are collected into a metric report."/>
42 <Annotation Term="OData.LongDescription" String="This resource specifies a set of metrics that shall be collected into a metric report."/>
43 <Annotation Term="Capabilities.InsertRestrictions">
44 <Record>
45 <PropertyValue Property="Insertable" Bool="false"/>
46 </Record>
47 </Annotation>
48 <Annotation Term="Capabilities.UpdateRestrictions">
49 <Record>
50 <PropertyValue Property="Updatable" Bool="true"/>
51 </Record>
52 </Annotation>
53 <Annotation Term="Capabilities.DeleteRestrictions">
54 <Record>
55 <PropertyValue Property="Deletable" Bool="true"/>
56 </Record>
57 </Annotation>
58 <Annotation Term="Redfish.Uris">
59 <Collection>
60 <String>/redfish/v1/TelemetryService/MetricReportDefinitions/{MetricReportDefinitionId}</String>
61 </Collection>
62 </Annotation>
63 </EntityType>
64 </Schema>
65
66 <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="MetricReportDefinition.v1_0_0">
67 <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
68
69 <EntityType Name="MetricReportDefinition" BaseType="MetricReportDefinition.MetricReportDefinition">
70 <Property Name="MetricReportDefinitionType" Type="MetricReportDefinition.v1_0_0.MetricReportDefinitionType">
71 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
72 <Annotation Term="OData.Description" String="Specifies when the metric report is generated."/>
73 <Annotation Term="OData.LongDescription" String="The value shall specify when the metric report is generated. If the value of the property is 'Periodic', then the Schedule property shall be present."/>
74 </Property>
75 <Property Name="Schedule" Type="Schedule.Schedule" Nullable="false">
76 <Annotation Term="OData.Description" String="Specifies the schedule for generating the metric report."/>
77 <Annotation Term="OData.LongDescription" String="If the schedule present, the metric report is generated at an interval specified by Schedule.RecurrenceInterval property. If Schedule.MaxOccurrences is specified, the metric report will no longer be generated after the specified number of occurances."/>
78 </Property>
79 <Property Name="ReportActions" Type="Collection(MetricReportDefinition.v1_0_0.ReportActionsEnum)" Nullable="false">
80 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
81 <Annotation Term="OData.Description" String="Specifies the actions to perform when a metric report is generated."/>
82 <Annotation Term="OData.LongDescription" String="The value of this property shall specify the actions to perform when the metric report is generated. The options are transmit an event or create a metric report resource."/>
83 </Property>
84 <Property Name="ReportUpdates" Type="MetricReportDefinition.v1_0_0.ReportUpdatesEnum" Nullable="false">
85 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
86 <Annotation Term="OData.Description" String="When logging metric reports, specifies how subsequent metric reports are handled in relationship to an existing metric report created from the metric report definition. Namely, whether to overwrite, append, or create new report resource."/>
87 <Annotation Term="OData.LongDescription" String="The value of this property shall specify how subsequent metric reports are handled in relationship to an existing metric report created from the metric report definition."/>
88 </Property>
89 <Property Name="AppendLimit" Type="Edm.Int64" Nullable="false">
90 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
91 <Annotation Term="OData.Description" String="Indicates the maximum number of entries that can be appended to a metric report. When the metric report reaches its limit, its behavior is dictated by the ReportUpdates property."/>
92 <Annotation Term="OData.LongDescription" String="This property shall be a number that indicates the maximum number of entries that can be appended to a metric report. When the metric report reaches its limit, its behavior shall be dictated by the ReportUpdates property. This property shall be required if ReportUpdates is either AppendWrapsWhenFull or AppendStopsWhenFull."/>
93 <Annotation Term="Validation.Minimum" Int="0"/>
94 </Property>
95 <Property Name="Status" Type="Resource.Status" Nullable="false">
96 <Annotation Term="OData.Description" String="This property describes the status and health of the resource and its children."/>
97 <Annotation Term="OData.LongDescription" String="This property shall contain any status or health properties of the resource."/>
98 </Property>
99 <Property Name="Wildcards" Type="Collection(MetricReportDefinition.v1_0_0.Wildcard)">
100 <Annotation Term="OData.Description" String="Specifies the strings used to replace wildcards in the paths in MetricProperties array property."/>
101 <Annotation Term="OData.LongDescription" String="The property shall specify an array of strings used to replace wildcards in the paths in the MetricProperties array property."/>
102 </Property>
103 <Property Name="MetricProperties" Type="Collection(Edm.String)">
104 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
105 <Annotation Term="OData.Description" String="Specifies a list of metric properties to include in the metric report."/>
106 <Annotation Term="OData.LongDescription" String="This property shall specify the metric properties to include in the metric report. Each entry shall be a URI, and may contain wildcards. The wildcards shall be enclosed by curly braces. The list of metric properties to include shall be constructed by replacing wildcards with the value in the Wildcard property. Property identifiers in the URI shall follow JSON fragment notation rules defined by RFC6901."/>
107 <Annotation Term="OData.IsURL"/>
108 </Property>
109 <Property Name="Metrics" Type="Collection(MetricReportDefinition.v1_0_0.Metric)">
110 <Annotation Term="OData.Description" String="Specifies a list of metrics to include in the metric report. The metrics may include metric properties or calculations applied to a metric property."/>
111 <Annotation Term="OData.LongDescription" String="The property shall specify a list of metrics to include in the metric report. The metrics may include metric properties or calculations applied to a metric property."/>
112 </Property>
113 <NavigationProperty Name="MetricReport" Type="MetricReport.MetricReport" Nullable="false">
114 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
115 <Annotation Term="OData.Description" String="Specifies the location where the resultant metric report is placed."/>
116 <Annotation Term="OData.LongDescription" String="This property shall be a reference to the resource where the resultant metric report is placed."/>
117 <Annotation Term="OData.AutoExpandReferences"/>
118 </NavigationProperty>
119
120 <Property Name="Actions" Type="MetricReportDefinition.v1_0_0.Actions" Nullable="false">
121 <Annotation Term="OData.Description" String="The available actions for this resource."/>
122 <Annotation Term="OData.LongDescription" String="The Actions property shall contain the available actions for this resource."/>
123 </Property>
124 </EntityType>
125
126 <ComplexType Name="Wildcard">
127 <Annotation Term="OData.AdditionalProperties" Bool="false"/>
128 <Annotation Term="OData.Description" String="Contains a list of wildcards and their substitution values."/>
129 <Annotation Term="OData.LongDescription" String="Each wildcard shall have a corresponding entry in this list element. Each entry shall specified the wildcard and its substitution values."/>
130 <Property Name="Name" Type="Edm.String">
131 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
132 <Annotation Term="OData.Description" String="The name of Wildcard."/>
133 <Annotation Term="OData.LongDescription" String="This property shall contain a name for a Wildcard for a key."/>
134 </Property>
135 <Property Name="Keys" Type="Collection(Edm.String)">
136 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
137 <Annotation Term="OData.Description" String="An array of Key values to substitute for the wildcard."/>
138 <Annotation Term="OData.LongDescription" String="If the value is an empty string, then the server shall substitute every current key. Each not empty key value shall be substituted for the wildcard."/>
139 </Property>
140 </ComplexType>
141
142 <ComplexType Name="Metric">
143 <Annotation Term="OData.AdditionalProperties" Bool="false"/>
144 <Annotation Term="OData.Description" String="Specifies a metric to include in the metric report. The metrics are derived by applying a calculation on each of the listed metric properties."/>
145 <Annotation Term="OData.LongDescription" String="The properties shall specify a metric to include in the metric report. The metrics shall be derived by applying the algorithm specified in CollectionnFunction property to each of the metric properties listed in the MetricProperties property."/>
146
147 <Property Name="MetricId" Type="Edm.String">
148 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
149 <Annotation Term="OData.Description" String="Specifies the label for the metric definition which is derived by applying the CollectionFunction to the metric property."/>
150 <Annotation Term="OData.LongDescription" String="This property shall specify a label for use in the metric report for the metric which is derived metrics by applying the CollectionFunction to the metric property. This property shall match the Id property of the corresponding metric definition resource."/>
151 </Property>
152 <Property Name="MetricProperties" Type="Collection(Edm.String)">
153 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
154 <Annotation Term="OData.Description" String="A collection of URI for the properties on which this metric is collected."/>
155 <Annotation Term="OData.LongDescription" String="Each value may contain one or more Wildcard names enclosed in curly braces. Wildcard value entries shall be substituted for each Wildcard name found. If two or more wild names are found, the same Wildcard index is used for each in one substitution pass. After substituting the WildCard values entries, each value shall be a URI for a property in a resource that matches a property declaration in the corresponding MetricDefinition."/>
156 <Annotation Term="OData.IsURL"/>
157 </Property>
158 <Property Name="CollectionFunction" Type="MetricReportDefinition.v1_0_0.CalculationAlgorithmEnum">
159 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
160 <Annotation Term="OData.Description" String="Specified the function to perform on each of the metric properties listed in the MetricProperties property."/>
161 <Annotation Term="OData.LongDescription" String="The property shall specify the function to perform on each of the metric properties listed in the MetricProperties property."/>
162 </Property>
163 <Property Name="CollectionDuration" Type="Edm.Duration">
164 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
165 <Annotation Term="OData.Description" String="Specifies the duration over which the function is computed."/>
166 <Annotation Term="OData.LongDescription" String="The value shall specify the duration over which the function is computed. The value shall conform to the Duration format."/>
167 </Property>
168 <Property Name="CollectionTimeScope" Type="MetricReportDefinition.v1_0_0.CollectionTimeScope">
169 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/ReadWrite"/>
170 <Annotation Term="OData.Description" String="Specifies the scope of time scope over which the function is applied."/>
171 <Annotation Term="OData.LongDescription" String="The value shall specify the scope of time over which the function is applied."/>
172 </Property>
173 </ComplexType>
174
175 <EnumType Name="MetricReportDefinitionType">
176 <Annotation Term="OData.Description" String="Indicates when the metric report is generated."/>
177 <Annotation Term="OData.LongDescription" String="The value shall specify when the metric report is generated."/>
178 <Member Name="Periodic">
179 <Annotation Term="OData.Description" String="The metric report is generated at a periodic time interval, specified in the Schedule property."/>
180 </Member>
181 <Member Name="OnChange">
182 <Annotation Term="OData.Description" String="The metric report is generated when any of the metric values change."/>
183 </Member>
184 <Member Name="OnRequest">
185 <Annotation Term="OData.Description" String="The metric report is generated when a HTTP GET is performed on the specified metric report."/>
186 </Member>
187 </EnumType>
188
189 <EnumType Name="ReportActionsEnum">
190 <Annotation Term="OData.Description" String="Actions to perform when a metric report is generated."/>
191 <Annotation Term="OData.LongDescription" String="The value shall specify the actions to perform when a metric report is generated."/>
192 <Member Name="LogToMetricReportsCollection">
193 <Annotation Term="OData.Description" String="When a metric report is scheduled to be generated, record the occurrence to the Metric Report Collection."/>
194 <Annotation Term="OData.LongDescription" String="When a metric report is scheduled to be generated, the service shall record the occurrence to the Metric Report Collection found under the Telemetry Service. The service shall update the Metric Report Collection based on the setting of the ReportUpdates property."/>
195 </Member>
196 <Member Name="RedfishEvent">
197 <Annotation Term="OData.Description" String="When a metric report is scheduled to be generated, send a Redfish Event message of type MetricReport."/>
198 <Annotation Term="OData.LongDescription" String="When a metric report is scheduled to be generated, the service shall produce a Redfish Event of type MetricReport to matching subscribers indicated in the EventSubscription collection found on the EventService."/>
199 </Member>
200 </EnumType>
201
202 <EnumType Name="ReportUpdatesEnum">
203 <Annotation Term="OData.Description" String="How to what to do with subsequent metric reports when a metric report already exists."/>
204 <Annotation Term="OData.LongDescription" String="The value shall specify what to do with subsequent metric reports when a metric report already exists."/>
205 <Member Name="Overwrite">
206 <Annotation Term="OData.Description" String="When a metric report is updated, overwrite the specified metric report resource."/>
207 </Member>
208 <Member Name="AppendWrapsWhenFull">
209 <Annotation Term="OData.Description" String="When a metric report is updated, append to the specified metric report resource. This also indicates that the metric report overwrites its entries with new entries when the metric report has reached its maximum capacity."/>
210 </Member>
211 <Member Name="AppendStopsWhenFull">
212 <Annotation Term="OData.Description" String="When a metric report is updated, append to the specified metric report resource. This also indicates that the metric report stops adding entries when the metric report has reached its maximum capacity."/>
213 </Member>
214 <Member Name="NewReport">
215 <Annotation Term="OData.Description" String="When a metric report is updated, create a new metric report resource, whose resource name is the metric report resource name concatenated with the timestamp."/>
216 </Member>
217 </EnumType>
218
219 <EnumType Name="CalculationAlgorithmEnum">
220 <Annotation Term="OData.Description" String="Specifies the function to apply to the list of metric properties."/>
221 <Annotation Term="OData.LongDescription" String="The value shall specify the function to apply to the list of metric properties."/>
222 <Member Name="Average">
223 <Annotation Term="OData.Description" String="The metric is calculated as the average of a metric reading over a sliding time interval."/>
224 <Annotation Term="OData.LongDescription" String="The metric shall be calculated as the average of a metric reading over a sliding time interval. The time interval shall be the value of the CalculationTimeInterval property."/>
225 </Member>
226 <Member Name="Maximum">
227 <Annotation Term="OData.Description" String="The metric is calculated as the maximum value of a metric reading over during a time interval."/>
228 <Annotation Term="OData.LongDescription" String="The metric shall be calculated as the maximum of a metric reading over a sliding time interval. The time interval shall be the value of the CalculationTimeInterval property."/>
229 </Member>
230 <Member Name="Minimum">
231 <Annotation Term="OData.Description" String="The metric is calculated as the minimum value of a metric reading over a sliding time interval."/>
232 <Annotation Term="OData.LongDescription" String="The metric shall be calculated as the minimum of a metric reading over a sliding time interval. The time interval shall be the value of the CalculationTimeInterval property."/>
233 </Member>
234 <Member Name="Summation">
235 <Annotation Term="OData.Description" String="The metric is calculated as the sum of the values over a sliding time interval."/>
236 <Annotation Term="OData.LongDescription" String="The metric shall be calculated as the sum of the the specified metric reading over a sliding time interval. The time interval shall be the value of the CalculationTimeInterval property."/>
237 </Member>
238 </EnumType>
239
240 <EnumType Name="CollectionTimeScope">
241 <Annotation Term="OData.Description" String="The time scope of the related metric values."/>
242 <Annotation Term="OData.LongDescription" String="The value of the property shall specify the time scope of the corresponding metric values."/>
243 <Member Name="Point">
244 <Annotation Term="OData.Description" String="The corresponding metric values apply to a point in time. On the corresponding metric value instances, the value of Timestamp shall specify the point in time."/>
245 </Member>
246 <Member Name="Interval">
247 <Annotation Term="OData.Description" String="The corresponding metric values apply to a time interval. On the corresponding metric value instances, the value of Timestamp shall specify the end of the time interval and Duration shall specify its duration."/>
248 </Member>
249 <Member Name="StartupInterval">
250 <Annotation Term="OData.Description" String="The corresponding metric values apply to a time interval that began at the startup of the measured resource (i.e. the Resources associated by Links.MetricDefinitionForResources). On the corresponding metric value instances, the value of Timestamp shall specify the end of the time interval. The value of Duration shall specifies the duration between startup of the resource and TimeStamp."/>
251 </Member>
252 </EnumType>
253
254 <ComplexType Name="Actions">
255 <Annotation Term="OData.AdditionalProperties" Bool="false"/>
256 <Annotation Term="OData.Description" String="The available actions for this resource."/>
257 <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
258 <Property Name="Oem" Type="MetricReportDefinition.v1_0_0.OemActions" Nullable="false">
259 <Annotation Term="OData.Description" String="This property contains the available OEM specific actions for this resource."/>
260 <Annotation Term="OData.LongDescription" String="This property shall contain any additional OEM actions for this resource."/>
261 </Property>
262 </ComplexType>
263
264 <ComplexType Name="OemActions">
265 <Annotation Term="OData.AdditionalProperties" Bool="true"/>
266 <Annotation Term="OData.Description" String="The available OEM specific actions for this resource."/>
267 <Annotation Term="OData.LongDescription" String="This type shall contain any additional OEM actions for this resource."/>
268 </ComplexType>
269 </Schema>
270
271 </edmx:DataServices>
272</edmx:Edmx>