MetricReportDefinitions
更新时间: 2026/05/12
在Gitcode上查看源码ResourceDefinition
uris
/redfish/v1/TelemetryService/MetricReportDefinitions/{id}
properties
| 名称 | 类型 | 是否只读 | 取值范围/枚举值 | 说明 |
|---|---|---|---|---|
| @odata.context | string | true | - | MetricDefinitions资源模型的OData描述信息 |
| @odata.id | string | true | - | MetricDefinitions资源节点的访问路径 |
| @odata.type | string | true | - | MetricDefinitions资源类型 |
| Id | string | true | - | 上报指标定义Id |
| Name | string | true | - | 上报指标定义名称 |
| Description | string | true | - | 上报指标定义描述 |
| MetricReport | object | true | - | 上报指标对象 |
| MetricReportDefinitionEnabled | boolean | false | true,false | 此属性控制是否产生新的MetricReport,如果属性值为false则不收集数据,包括trigger触发 |
| MetricReportDefinitionType | string | false | OnChange,OnRequest,Periodic | 指定什么时间产生MetricReport ● OnChange:采集项取值变化时产生 ● OnRequest:查询MetricReport时收集并生成 ● Periodic:周期性产生,选择该方式需指定Schedule属性配置周期 |
| Metrics | array | false | - | 最终呈现在MetricReport中的采集项定义列表,可能包含基于原始值计算出来的结果 |
| ReportActions | array | false | LogToMetricReportsCollection,RedfishEvent | 产生新的MetricReport之后需要执行的动作,支持多选 ● LogToMetricReportsCollection:记录在对应MetricReport资源 ● RedfishEvent:通过redfish事件上报给订阅者 |
| ReportUpdates | string | false | AppendStopsWhenFull,AppendWrapsWhenFull,NewReport | 单个MetricReport达容量上限后后续报表更新规则 ● AppendStopsWhenFull:停止添加新纪录 ● AppendWrapsWhenFull:新纪录覆盖旧记录 ● NewReport:新建MetricReport资源,Id拼接时间戳;OnRequest模式忽略该配置 |
| Schedule | object | false | - | 指定产生新MetricReport数据项的时间周期 |
| Status | object | true | - | 服务上报指标定义资源状态 |
| Links | array | true | - | 触发器地址 |
| Triggers | array | true | - | 触发生成新MetricReport的Trigger资源链接,对应触发器需配置TriggerActions包含RedfishMetricReport |
supported_methods
- GET
- PATCH
- DELETE
HTTP methods
GET
命令功能
查询指定指标报告定义资源信息
说明
BMC300 5.9.0.1及以上版本支持
命令格式
URL: https://device_ip/redfish/v1/TelemetryService/MetricReportDefinitions/id
请求头:
X-Auth-Token: auth_value请求消息体: 无
参数说明
| 参数 | 参数说明 | 取值 |
|---|---|---|
| device_ip | 登录设备的IP地址 | IPv4或IPv6地址 |
| id | 指标报告id | 用户可通过查询指标报告定义列表获得 |
| auth_value | 执行该GET请求时,必须在"Headers"中携带"X-Auth-Token"值用于鉴权 | 可通过/redfish/v1/SessionService/Sessions创建会话时获得 |
使用指南
无
使用实例
请求样例:
http
GET https://device_ip/redfish/v1/TelemetryService/MetricReportDefinitions/CPUUsageReport请求头:
X-Auth-Token: 123456789***********************请求消息体:无
响应样例:
json
{
"@odata.context": "/redfish/v1/$metadata#MetricReportDefinition.MetricReportDefinition",
"@odata.id": "/redfish/v1/TelemetryService/MetricReportDefinitions/CPUUsageReport",
"@odata.type": "#MetricReportDefinition.v1_4_6.MetricReportDefinition",
"Id": "CPUUsageReport",
"Name": "Metric report of CPU Usage",
"AppendLimit": 128,
"Description": "Metric report of CPU Usage",
"MetricReport": {
"@odata.id": "/redfish/v1/TelemetryService/MetricReports/CPUUsageReport"
},
"MetricReportDefinitionEnabled": false,
"MetricReportDefinitionType": "Periodic",
"Metrics": [
{
"CollectionDuration": "PT1H",
"CollectionFunction": "Average",
"CollectionTimeScope": "Interval",
"MetricId": "CPUUsage"
}
],
"ReportActions": [
"LogToMetricReportsCollection",
"RedfishEvent"
],
"ReportUpdates": "AppendWrapsWhenFull",
"Schedule": {
"InitialStartTime": "1970-01-01T00:00:00+00:00",
"RecurrenceInterval": "PT5M"
},
"Status": {
"Health": "OK",
"State": "Enabled"
},
"Links": {
"Triggers": [
{
"@odata.id": "/redfish/v1/TelemetryService/Triggers/CPUUsageTriggers"
}
]
}
}响应码:200
PATCH
命令功能
修改指定指标报告定义资源信息
说明
BMC300 5.9.0.1及以上版本支持
命令格式
URL: https://device_ip/redfish/v1/TelemetryService/MetricReportDefinitions/id
请求头:
X-Auth-Token: auth_value
Content-Type: header_type
If-Match: ifmatch_value请求消息体:
json
{
"MetricReportDefinitionEnabled": state,
"MetricReportDefinitionType": type,
"Metrics": [
{
"CollectionDuration": collectionduration_value,
"CollectionFunction": collectionfunction_value,
"CollectionTimeScope": collectiontimescope_value,
"MetricId": metricid_value
}
],
"ReportActions": reportactions_value,
"ReportUpdates": reportupdates_value,
"Schedule": {
"InitialStartTime": initialstarttime_value,
"Lifetime": lifetime_value,
"MaxOccurrences": maxoccurrences_value,
"RecurrenceInterval": recurrenceinterval_value
}
}请求头参数说明
参见 请求头参数说明
请求体参数说明
| 参数 | 参数说明 | 取值 |
|---|---|---|
| id | 指标报告id | 用户可通过查询指标报告定义列表获得 |
| ifmatch_value | 请求消息的匹配参数 | 可通过对相应资源发起GET操作,从响应头中获取(对应于"ETag"参数) |
| state | 指标报告生成是否使能 | 布尔值,此属性控制是否产生新的指标报告,属性值为false则不收集数据,包括触发器触发 |
| type | 指定产生指标报告方式 | 字符串,支持的取值: ● OnChange:指标项取值变化时产生 ● OnRequest:查询指标报告时收集并生成 ● Periodic:周期性产生,需要指定Schedule属性用于指定生成周期 |
| collectionduration_value | 对原始指标项进行统计计算的时长 | 字符串,格式:^P(\d+D)?(T(\d+H)?(\d+M)?(\d+(.\d+)?S)?)?$ 说明:如果配置了CollectionDuration,则必须配置RecurrenceInterval,且CollectionDuration必须大于RecurrenceInterval |
| collectionfunction_value | 对MetricProperties中指定的原始指标项进行的计算算法 | 字符串 支持的取值: ● Average:在CollectionDuration时间范围内的平均值 ● Maximum:在CollectionDuration时间范围内的最大值 ● Minimum:在CollectionDuration时间范围内的最小值 ● Summation:在CollectionDuration时间范围内的总和 |
| collectiontimescope_value | 计算算法的作用的时间范围 | 字符串 支持的取值: ● Interval:周期性采集,通过CollectionDuration指定采集周期,通过MetricReport中Timestamp属性记录每一次采集的时间 ● Point:指定某个时间点进行采集 ● StartupInterval:从距离采集资源启动后某个时间间隔进行采集,通过Timestamp指定实际执行的时间,通过CollectionDuration指定距离启动的时间间隔 |
| metricid_value | 指标项的标识符 | 字符串 长度为1-64。如果指标报告使用的指标项是指标定义中定义的,此属性取值即为对应Metric的Id;如果是通过MetricProperties定义的指标项,则此属性不应该存在 |
| reportactions_value | 指标报告更新后的动作 | 字符串数组 允许同时选择多个,取值可以是: ● LogToMetricReportsCollection:记录在对应指标报告资源中 ● RedfishEvent:通过redfish事件上报给订阅者 |
| reportupdates_value | 指标报告容量达上限后的更新操作 | 字符串 支持的取值: AppendWrapsWhenFull:新纪录覆盖旧记录 |
| initialstarttime_value | 指标报告首次出现的时间 | 字符串 字符串长度最长为32,格式如下: ^\d{4}-\d{1,2}-\d{1,2}T\d{1,2}:\d{1,2}:\d{1,2}.\d{1,2}:\d{1,2}$ |
| lifetime_value | 指标报告的生命周期 | 字符串 字符串长度最长为256,格式如下: ^P(\d+D)?(T(\d+H)?(\d+M)?(\d+(.\d+)?S)?)?$ |
| maxoccurrences_value | 指标报告生成的最大次数 | 整型 |
| recurrenceinterval_value | 连续生成的指标报告间的时间间隔 | 字符串 字符串长度最长为256,格式如下: ^P(\d+D)?(T(\d+H)?(\d+M)?(\d+(.\d+)?S)?)?$ |
使用指南
无
使用实例
请求样例:
http
PATCH https://device_ip/redfish/v1/TelemetryService/MetricReportDefinitions/CPUUsageReport请求头:
X-Auth-Token: 4b9d8666c671a55def97bf146b727dac
Content-Type: application/json
If-Match: W/"97a6c116"请求消息体:
json
{
"MetricReportDefinitionEnabled": true,
"MetricReportDefinitionType": "OnRequest",
"Metrics": [
{
"CollectionDuration": "PT1H40M",
"MetricId": "CPUUsage"
}
],
"ReportActions": [
"LogToMetricReportsCollection"
],
"Schedule": {
"InitialStartTime": "1970-01-01T00:00:00+00:00",
"Lifetime": "P10DT1H",
"MaxOccurrences": 6000,
"RecurrenceInterval": "PT3M"
}
}响应样例:
json
{
"@odata.context": "/redfish/v1/$metadata#MetricReportDefinition.MetricReportDefinition",
"@odata.id": "/redfish/v1/TelemetryService/MetricReportDefinitions/CPUUsageReport",
"@odata.type": "#MetricReportDefinition.v1_4_6.MetricReportDefinition",
"Id": "CPUUsageReport",
"Name": "Metric report of CPU Usage",
"AppendLimit": 128,
"Description": "Metric report of CPU Usage",
"MetricReport": {
"@odata.id": "/redfish/v1/TelemetryService/MetricReports/CPUUsageReport"
},
"MetricReportDefinitionEnabled": true,
"MetricReportDefinitionType": "OnRequest",
"Metrics": [
{
"CollectionDuration": "PT1H40M",
"CollectionFunction": null,
"CollectionTimeScope": "",
"MetricId": "CPUUsage"
}
],
"ReportActions": [
"LogToMetricReportsCollection"
],
"ReportUpdates": "AppendWrapsWhenFull",
"Schedule": {
"InitialStartTime": "1970-01-01T00:00:00+00:00",
"Lifetime": "P10DT1H",
"MaxOccurrences": 6000,
"RecurrenceInterval": "PT3M"
},
"Status": {
"Health": "OK",
"State": "Enabled"
},
"Links": {
"Triggers": [
{
"@odata.id": "/redfish/v1/TelemetryService/Triggers/CPUUsageTriggers"
}
]
}
}响应码:201
DELETE
命令功能
删除指定指标报告定义
说明
BMC300 5.9.0.1及以上版本支持
命令格式
URL: https://device_ip/redfish/v1/TelemetryService/MetricReportDefinitions/id
请求头:
X-Auth-Token: auth_value请求消息体: 无
参数说明
| 参数 | 参数说明 | 取值 |
|---|---|---|
| device_ip | 登录设备的IP地址 | IPv4或IPv6地址 |
| id | 指标报告id | 用户可通过查询指标报告定义列表获得 |
| auth_value | 请求消息的鉴权参数 | 可通过/redfish/v1/SessionService/Sessions创建会话时获得 |
使用指南
无
使用实例
请求样例:
http
DELETE https://device_ip/redfish/v1/TelemetryService/MetricReportDefinitions/CPUUsageReport请求头:
X-Auth-Token: 123456789***********************请求消息体:无
响应样例:
json
{
"error": {
"code": "Base.1.0.GeneralError",
"message": "A general error has occurred. See ExtendedInfo for more information.",
"@Message.ExtendedInfo": [
{
"@odata.type": "#Message.v1_0_0.Message",
"MessageId": "Base.1.0.Success",
"RelatedProperties": [],
"Message": "Successfully Completed Request",
"MessageArgs": [],
"Severity": "OK",
"Resolution": "None"
}
]
}
}响应码:200
输出说明