xref: /openbmc/bmcweb/features/redfish/schema/dmtf/csdl/StorageMetrics_v1.xml (revision d125652e8a30dfeaad88bbfa5b1e04a80610469c)
1<?xml version="1.0" encoding="UTF-8"?>
2<!---->
3<!--################################################################################               -->
4<!--# Redfish Schema:  StorageMetrics 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-2025 DMTF in cooperation with Storage Networking Industry Association (SNIA). -->
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.v1_0_0"/>
22  </edmx:Reference>
23  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Storage_v1.xml">
24    <edmx:Include Namespace="Storage"/>
25  </edmx:Reference>
26  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/swordfish/v1/IOStatistics_v1.xml">
27    <edmx:Include Namespace="IOStatistics"/>
28  </edmx:Reference>
29  <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
30    <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
31    <edmx:Include Namespace="Validation.v1_0_0" Alias="Validation"/>
32  </edmx:Reference>
33  <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Measures.V1.xml">
34    <edmx:Include Namespace="Org.OData.Measures.V1" Alias="Measures"/>
35  </edmx:Reference>
36
37  <edmx:DataServices>
38
39    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="StorageMetrics">
40      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
41      <Annotation Term="Redfish.Language" String="en"/>
42
43      <EntityType Name="StorageMetrics" BaseType="Resource.v1_0_0.Resource" Abstract="true">
44        <Annotation Term="OData.Description" String="The usage and health statistics for a storage subsystem."/>
45        <Annotation Term="OData.LongDescription" String="The `StorageMetrics` schema shall contain the usage and health statistics for a storage subsystem in a Redfish implementation."/>
46        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
47        <Annotation Term="Capabilities.InsertRestrictions">
48          <Record>
49            <PropertyValue Property="Insertable" Bool="false"/>
50          </Record>
51        </Annotation>
52        <Annotation Term="Capabilities.UpdateRestrictions">
53          <Record>
54            <PropertyValue Property="Updatable" Bool="false"/>
55          </Record>
56        </Annotation>
57        <Annotation Term="Capabilities.DeleteRestrictions">
58          <Record>
59            <PropertyValue Property="Deletable" Bool="false"/>
60          </Record>
61        </Annotation>
62        <Annotation Term="Redfish.Uris">
63          <Collection>
64            <String>/redfish/v1/Storage/{StorageId}/Metrics</String>
65            <String>/redfish/v1/Systems/{ComputerSystemId}/Storage/{StorageId}/Metrics</String>
66            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/Metrics</String>
67            <String>/redfish/v1/CompositionService/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/Metrics</String>
68            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Storage/{StorageId}/Metrics</String>
69            <String>/redfish/v1/ResourceBlocks/{ResourceBlockId}/Systems/{ComputerSystemId}/Storage/{StorageId}/Metrics</String>
70          </Collection>
71        </Annotation>
72      </EntityType>
73    </Schema>
74
75    <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="StorageMetrics.v1_0_0">
76      <Annotation Term="Redfish.OwningEntity" String="DMTF"/>
77      <Annotation Term="Redfish.Release" String="2024.4"/>
78
79      <EntityType Name="StorageMetrics" BaseType="StorageMetrics.StorageMetrics">
80        <Property Name="Actions" Type="StorageMetrics.v1_0_0.Actions" Nullable="false">
81          <Annotation Term="OData.Description" String="The available actions for this resource."/>
82          <Annotation Term="OData.LongDescription" String="This property shall contain the available actions for this resource."/>
83        </Property>
84        <Property Name="CompressionSavingsBytes" Type="Edm.Int64">
85          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
86          <Annotation Term="OData.Description" String="Current compression savings on the storage system in bytes."/>
87          <Annotation Term="OData.LongDescription" String="The value shall represent the current compression savings on the storage system in bytes."/>
88          <Annotation Term="Measures.Unit" String="By"/>
89        </Property>
90        <Property Name="DeduplicationSavingsBytes" Type="Edm.Int64">
91          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
92          <Annotation Term="OData.Description" String="Current deduplication savings on the storage system in bytes."/>
93          <Annotation Term="OData.LongDescription" String="The value shall represent the current deduplication savings on the storage system in bytes."/>
94          <Annotation Term="Measures.Unit" String="By"/>
95        </Property>
96        <Property Name="ThinProvisioningSavingsBytes" Type="Edm.Int64">
97          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
98          <Annotation Term="OData.Description" String="Current thin provisioning savings on the storage system in bytes."/>
99          <Annotation Term="OData.LongDescription" String="The value shall represent the current thin provisioning savings on the storage system in bytes."/>
100          <Annotation Term="Measures.Unit" String="By"/>
101        </Property>
102        <Property Name="IOStatistics" Type="IOStatistics.IOStatistics" Nullable="false">
103          <Annotation Term="OData.Description" String="Statistics for this storage system."/>
104          <Annotation Term="OData.LongDescription" String="The value shall contain the I/O statistics for this storage system."/>
105        </Property>
106        <Property Name="StateChangeCount" Type="Edm.Decimal">
107          <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
108          <Annotation Term="OData.Description" String="The number of state changes for this storage subsystem."/>
109          <Annotation Term="OData.LongDescription" String="This property shall contain the number of times the `State` property within the `Status` property of the parent `Storage` resource changed."/>
110        </Property>
111      </EntityType>
112
113      <ComplexType Name="Actions">
114        <Annotation Term="OData.AdditionalProperties" Bool="false"/>
115        <Annotation Term="OData.Description" String="The available actions for this resource."/>
116        <Annotation Term="OData.LongDescription" String="This type shall contain the available actions for this resource."/>
117        <Property Name="Oem" Type="StorageMetrics.v1_0_0.OemActions" Nullable="false">
118          <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
119          <Annotation Term="OData.LongDescription" String="This property shall contain the available OEM-specific actions for this resource."/>
120        </Property>
121      </ComplexType>
122
123      <ComplexType Name="OemActions">
124        <Annotation Term="OData.AdditionalProperties" Bool="true"/>
125        <Annotation Term="OData.Description" String="The available OEM-specific actions for this resource."/>
126        <Annotation Term="OData.LongDescription" String="This type shall contain the available OEM-specific actions for this resource."/>
127      </ComplexType>
128    </Schema>
129
130  </edmx:DataServices>
131</edmx:Edmx>
132