redfish_codegen/models/metric_report_definition/v1_4_3/
metric.rs

1// Generated by redfish-codegen. Do not modify.
2
3use crate::models;
4
5/// Specifies a set of metrics to include in the metric report.  Calculation parameters, if present, are applied to the metrics prior to being included in the metric report.
6#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
7#[derive(derivative::Derivative)]
8#[derivative(Default)]
9pub struct Metric {
10    /// The duration over which the function is computed.
11    #[serde(rename = "CollectionDuration")]
12    #[serde(default, skip_serializing_if = "Option::is_none")]
13    pub collection_duration: Option<String>,
14    #[serde(rename = "CollectionFunction")]
15    #[serde(default, skip_serializing_if = "Option::is_none")]
16    pub collection_function: Option<models::metric_report_definition::v1_4_3::CalculationAlgorithmEnum>,
17    #[serde(rename = "CollectionTimeScope")]
18    #[serde(default, skip_serializing_if = "Option::is_none")]
19    pub collection_time_scope: Option<models::metric_report_definition::v1_4_3::CollectionTimeScope>,
20    /// The metric definition identifier that contains the metric properties to include in the metric report.
21    #[serde(rename = "MetricId")]
22    #[serde(default, skip_serializing_if = "Option::is_none")]
23    pub metric_id: Option<String>,
24    /// The list of URIs with wildcards and property identifiers to include in the metric report.  If a URI has wildcards, the wildcards are substituted as specified in the Wildcards property.
25    #[serde(rename = "MetricProperties")]
26    #[serde(default, skip_serializing_if = "Option::is_none")]
27    pub metric_properties: Option<Vec<String>>,
28    #[serde(rename = "Oem")]
29    #[serde(default, skip_serializing_if = "Option::is_none")]
30    pub oem: Option<models::resource::Oem>,
31}
32
33impl crate::Metadata<'static> for Metric {
34    const JSON_SCHEMA: &'static str = "MetricReportDefinition.v1_4_3.json";
35}