1{
2    "$id": "http://redfish.dmtf.org/schemas/v1/SwitchMetrics.v1_0_2.json",
3    "$ref": "#/definitions/SwitchMetrics",
4    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
5    "copyright": "Copyright 2014-2024 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
6    "definitions": {
7        "Actions": {
8            "additionalProperties": false,
9            "description": "The available actions for this resource.",
10            "longDescription": "This type shall contain the available actions for this resource.",
11            "patternProperties": {
12                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
13                    "description": "This property shall specify a valid odata or Redfish property.",
14                    "type": [
15                        "array",
16                        "boolean",
17                        "integer",
18                        "number",
19                        "null",
20                        "object",
21                        "string"
22                    ]
23                }
24            },
25            "properties": {
26                "#SwitchMetrics.ClearCurrentPeriod": {
27                    "$ref": "#/definitions/ClearCurrentPeriod"
28                },
29                "Oem": {
30                    "$ref": "#/definitions/OemActions",
31                    "description": "The available OEM-specific actions for this resource.",
32                    "longDescription": "This property shall contain the available OEM-specific actions for this resource."
33                }
34            },
35            "type": "object"
36        },
37        "ClearCurrentPeriod": {
38            "additionalProperties": false,
39            "description": "This action sets the `CurrentPeriod` property's values to 0.",
40            "longDescription": "This action shall set the `CurrentPeriod` property's values to 0.",
41            "parameters": {},
42            "patternProperties": {
43                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
44                    "description": "This property shall specify a valid odata or Redfish property.",
45                    "type": [
46                        "array",
47                        "boolean",
48                        "integer",
49                        "number",
50                        "null",
51                        "object",
52                        "string"
53                    ]
54                }
55            },
56            "properties": {
57                "target": {
58                    "description": "Link to invoke action",
59                    "format": "uri-reference",
60                    "type": "string"
61                },
62                "title": {
63                    "description": "Friendly action name",
64                    "type": "string"
65                }
66            },
67            "type": "object"
68        },
69        "CurrentPeriod": {
70            "additionalProperties": false,
71            "description": "The memory metrics since the last switch reset or `ClearCurrentPeriod` action for a switch.",
72            "longDescription": "This type shall describe the memory metrics since the last reset or `ClearCurrentPeriod` action for a switch.",
73            "patternProperties": {
74                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
75                    "description": "This property shall specify a valid odata or Redfish property.",
76                    "type": [
77                        "array",
78                        "boolean",
79                        "integer",
80                        "number",
81                        "null",
82                        "object",
83                        "string"
84                    ]
85                }
86            },
87            "properties": {
88                "CorrectableECCErrorCount": {
89                    "description": "The number of correctable errors of memory since reset.",
90                    "longDescription": "This property shall contain the number of correctable errors of memory since reset.",
91                    "readonly": true,
92                    "type": [
93                        "integer",
94                        "null"
95                    ]
96                },
97                "UncorrectableECCErrorCount": {
98                    "description": "The number of uncorrectable errors of memory since reset.",
99                    "longDescription": "This property shall contain the number of uncorrectable errors of memory since reset.",
100                    "readonly": true,
101                    "type": [
102                        "integer",
103                        "null"
104                    ]
105                }
106            },
107            "type": "object"
108        },
109        "InternalMemoryMetrics": {
110            "additionalProperties": false,
111            "description": "The memory metrics for a switch.",
112            "longDescription": "This property shall contain properties that describe the memory metrics for a switch.",
113            "patternProperties": {
114                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
115                    "description": "This property shall specify a valid odata or Redfish property.",
116                    "type": [
117                        "array",
118                        "boolean",
119                        "integer",
120                        "number",
121                        "null",
122                        "object",
123                        "string"
124                    ]
125                }
126            },
127            "properties": {
128                "CurrentPeriod": {
129                    "$ref": "#/definitions/CurrentPeriod",
130                    "description": "The memory metrics since the last reset for this switch.",
131                    "longDescription": "This property shall contain properties that describe the metrics for the current period of memory for this switch."
132                },
133                "LifeTime": {
134                    "$ref": "#/definitions/LifeTime",
135                    "description": "The memory metrics for the lifetime of this switch.",
136                    "longDescription": "This property shall contain properties that describe the metrics for the lifetime of memory for this switch."
137                }
138            },
139            "type": "object"
140        },
141        "LifeTime": {
142            "additionalProperties": false,
143            "description": "The memory metrics for the lifetime for a switch.",
144            "longDescription": "This type shall describe the memory metrics since manufacturing for a switch.",
145            "patternProperties": {
146                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
147                    "description": "This property shall specify a valid odata or Redfish property.",
148                    "type": [
149                        "array",
150                        "boolean",
151                        "integer",
152                        "number",
153                        "null",
154                        "object",
155                        "string"
156                    ]
157                }
158            },
159            "properties": {
160                "CorrectableECCErrorCount": {
161                    "description": "The number of correctable errors for the lifetime of the memory.",
162                    "longDescription": "This property shall contain the number of correctable errors for the lifetime of memory.",
163                    "readonly": true,
164                    "type": [
165                        "integer",
166                        "null"
167                    ]
168                },
169                "UncorrectableECCErrorCount": {
170                    "description": "The number of uncorrectable errors for the lifetime of the memory.",
171                    "longDescription": "This property shall contain the number of uncorrectable errors for the lifetime of memory.",
172                    "readonly": true,
173                    "type": [
174                        "integer",
175                        "null"
176                    ]
177                }
178            },
179            "type": "object"
180        },
181        "OemActions": {
182            "additionalProperties": true,
183            "description": "The available OEM-specific actions for this resource.",
184            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
185            "patternProperties": {
186                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
187                    "description": "This property shall specify a valid odata or Redfish property.",
188                    "type": [
189                        "array",
190                        "boolean",
191                        "integer",
192                        "number",
193                        "null",
194                        "object",
195                        "string"
196                    ]
197                }
198            },
199            "properties": {},
200            "type": "object"
201        },
202        "SwitchMetrics": {
203            "additionalProperties": false,
204            "description": "The `SwitchMetrics` schema contains usage and health statistics for a switch device.",
205            "longDescription": "This resource shall represent the metrics for a switch device in a Redfish implementation.",
206            "patternProperties": {
207                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
208                    "description": "This property shall specify a valid odata or Redfish property.",
209                    "type": [
210                        "array",
211                        "boolean",
212                        "integer",
213                        "number",
214                        "null",
215                        "object",
216                        "string"
217                    ]
218                }
219            },
220            "properties": {
221                "@odata.context": {
222                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
223                },
224                "@odata.etag": {
225                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
226                },
227                "@odata.id": {
228                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
229                },
230                "@odata.type": {
231                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
232                },
233                "Actions": {
234                    "$ref": "#/definitions/Actions",
235                    "description": "The available actions for this resource.",
236                    "longDescription": "This property shall contain the available actions for this resource."
237                },
238                "Description": {
239                    "anyOf": [
240                        {
241                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
242                        },
243                        {
244                            "type": "null"
245                        }
246                    ],
247                    "readonly": true
248                },
249                "Id": {
250                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
251                    "readonly": true
252                },
253                "InternalMemoryMetrics": {
254                    "$ref": "#/definitions/InternalMemoryMetrics",
255                    "description": "The memory metrics for a switch.",
256                    "longDescription": "This property shall contain properties that describe the memory metrics for a switch."
257                },
258                "Name": {
259                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
260                    "readonly": true
261                },
262                "Oem": {
263                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
264                    "description": "The OEM extension property.",
265                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
266                },
267                "PCIeErrors": {
268                    "$ref": "http://redfish.dmtf.org/schemas/v1/PCIeDevice.json#/definitions/PCIeErrors",
269                    "description": "The PCIe errors associated with this switch.",
270                    "longDescription": "This property shall contain the PCIe errors associated with this switch."
271                }
272            },
273            "required": [
274                "@odata.id",
275                "@odata.type",
276                "Id",
277                "Name"
278            ],
279            "type": "object"
280        }
281    },
282    "language": "en",
283    "owningEntity": "DMTF",
284    "release": "2021.3",
285    "title": "#SwitchMetrics.v1_0_2.SwitchMetrics"
286}