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