components:
  schemas:
    MetricReportDefinition_v1_2_0_Actions:
      additionalProperties: false
      description: The available actions for this resource.
      properties:
        Oem:
          $ref: '#/components/schemas/MetricReportDefinition_v1_2_0_OemActions'
          description: This property contains the available OEM specific actions for
            this resource.
          x-longDescription: This property shall contain any additional OEM actions
            for this resource.
      type: object
      x-longDescription: This type shall contain the available actions for this resource.
      x-patternProperties:
        ^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\.[a-zA-Z_][a-zA-Z0-9_]*$:
          description: This property shall specify a valid odata or Redfish property.
    MetricReportDefinition_v1_2_0_CalculationAlgorithmEnum:
      description: Specifies the function to apply to the list of metric properties.
      enum:
      - Average
      - Maximum
      - Minimum
      - Summation
      type: string
      x-enumDescriptions:
        Average: The metric is calculated as the average of a metric reading over
          a sliding time interval.
        Maximum: The metric is calculated as the maximum value of a metric reading
          over during a time interval.
        Minimum: The metric is calculated as the minimum value of a metric reading
          over a sliding time interval.
        Summation: The metric is calculated as the sum of the values over a sliding
          time interval.
      x-enumLongDescriptions:
        Average: The metric shall be calculated as the average of a metric reading
          over a sliding time interval.  The time interval shall be the value of the
          CalculationTimeInterval property.
        Maximum: The metric shall be calculated as the maximum of a metric reading
          over a sliding time interval.  The time interval shall be the value of the
          CalculationTimeInterval property.
        Minimum: The metric shall be calculated as the minimum of a  metric reading
          over a sliding time interval.  The time interval shall be the value of the
          CalculationTimeInterval property.
        Summation: The metric shall be calculated as the sum of the the specified
          metric reading over a sliding time interval.  The time interval shall be
          the value of the CalculationTimeInterval property.
      x-longDescription: The value shall specify the function to apply to the list
        of metric properties.
    MetricReportDefinition_v1_2_0_CollectionTimeScope:
      description: The time scope of the related metric values.
      enum:
      - Point
      - Interval
      - StartupInterval
      type: string
      x-enumDescriptions:
        Interval: The corresponding metric values apply to a time interval.  On the
          corresponding metric value instances, the value of Timestamp shall specify
          the end of the time interval and Duration shall specify its duration.
        Point: The corresponding metric values apply to a point in time.  On the corresponding
          metric value instances, the value of Timestamp shall specify the point in
          time.
        StartupInterval: The corresponding metric values apply to a time interval
          that began at the startup of the measured resource (i.e. the Resources associated
          by Links.MetricDefinitionForResources).  On the corresponding metric value
          instances, the value of Timestamp shall specify the end of the time interval.  The
          value of Duration shall specifies the duration between startup of the resource
          and TimeStamp.
      x-longDescription: The value of the property shall specify the time scope of
        the corresponding metric values.
    MetricReportDefinition_v1_2_0_Links:
      additionalProperties: false
      description: Contains references to other resources that are related to this
        resource.
      properties:
        Oem:
          $ref: http://redfish.dmtf.org/schemas/v1/Resource.yaml#/components/schemas/Resource_Oem
          description: Oem extension object.
          x-longDescription: This object represents the Oem property.  All values
            for resources described by this schema shall comply to the requirements
            as described in the Redfish specification.
        Triggers:
          description: The triggers that will cause this metric report definition
            to generate a new metric report upon a trigger occurrence when the TriggerActions
            property contains the value RedfishMetricReport.
          items:
            $ref: http://redfish.dmtf.org/schemas/v1/odata-v4.yaml#/components/schemas/odata-v4_idRef
          readOnly: true
          type: array
          x-longDescription: The value shall be a set of references to triggers that
            will cause this metric report definition to generate a new metric report
            upon a trigger occurrence when the TriggerActions property contains the
            value RedfishMetricReport.
          x-versionAdded: v1_2_0
        Triggers@odata.count:
          $ref: http://redfish.dmtf.org/schemas/v1/odata-v4.yaml#/components/schemas/odata-v4_count
      type: object
      x-longDescription: This type, as described by the Redfish Specification, shall
        contain references to resources that are related to, but not contained by
        (subordinate to), this resource.
      x-patternProperties:
        ^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\.[a-zA-Z_][a-zA-Z0-9_]*$:
          description: This property shall specify a valid odata or Redfish property.
    MetricReportDefinition_v1_2_0_Metric:
      additionalProperties: false
      description: Specifies a metric to include in the metric report. The metrics
        are derived by applying a calculation on each of the listed metric properties.
      properties:
        CollectionDuration:
          description: Specifies the duration over which the function is computed.
          nullable: true
          pattern: -?P(\d+D)?(T(\d+H)?(\d+M)?(\d+(.\d+)?S)?)?
          readOnly: false
          type: string
          x-longDescription: The value shall specify the duration over which the function
            is computed.  The value shall conform to the Duration format.
        CollectionFunction:
          $ref: '#/components/schemas/MetricReportDefinition_v1_2_0_CalculationAlgorithmEnum'
          description: Specified the function to perform on each of the metric properties
            listed in the MetricProperties property.
          nullable: true
          readOnly: false
          x-longDescription: The property shall specify the function to perform on
            each of the metric properties listed in the MetricProperties property.
        CollectionTimeScope:
          $ref: '#/components/schemas/MetricReportDefinition_v1_2_0_CollectionTimeScope'
          description: Specifies the scope of time scope over which the function is
            applied.
          nullable: true
          readOnly: false
          x-longDescription: The value shall specify the scope of time over which
            the function is applied.
        MetricId:
          description: Specifies the label for the metric definition which is derived
            by applying the CollectionFunction to the metric property.
          nullable: true
          readOnly: true
          type: string
          x-longDescription: This property shall specify a label for use in the metric
            report for the metric which is derived metrics by applying the CollectionFunction
            to the metric property.  This property shall match the Id property of
            the corresponding metric definition resource.
        MetricProperties:
          description: A collection of URI for the properties on which this metric
            is collected.
          format: uri-reference
          items:
            nullable: true
            type: string
          readOnly: false
          type: array
          x-longDescription: Each value may contain one or more Wildcard names enclosed
            in curly braces.  Wildcard value entries shall be substituted for each
            Wildcard name found.  If two or more wild names are found, the same Wildcard
            index is used for each in one substitution pass.  After substituting the
            WildCard values entries, each value shall be a URI for a property in a
            resource that matches a property declaration in the corresponding MetricDefinition.
      type: object
      x-longDescription: The properties shall specify a metric to include in the metric
        report. The metrics shall be derived by applying the algorithm specified in
        CollectionnFunction property to each of the metric properties listed in the
        MetricProperties property.
      x-patternProperties:
        ^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\.[a-zA-Z_][a-zA-Z0-9_]*$:
          description: This property shall specify a valid odata or Redfish property.
    MetricReportDefinition_v1_2_0_MetricReportDefinition:
      additionalProperties: false
      description: A set of metrics that are collected into a metric report.
      properties:
        '@odata.context':
          $ref: http://redfish.dmtf.org/schemas/v1/odata-v4.yaml#/components/schemas/odata-v4_context
        '@odata.etag':
          $ref: http://redfish.dmtf.org/schemas/v1/odata-v4.yaml#/components/schemas/odata-v4_etag
        '@odata.id':
          $ref: http://redfish.dmtf.org/schemas/v1/odata-v4.yaml#/components/schemas/odata-v4_id
        '@odata.type':
          $ref: http://redfish.dmtf.org/schemas/v1/odata-v4.yaml#/components/schemas/odata-v4_type
        Actions:
          $ref: '#/components/schemas/MetricReportDefinition_v1_2_0_Actions'
          description: The available actions for this resource.
          x-longDescription: The Actions property shall contain the available actions
            for this resource.
        AppendLimit:
          description: Indicates the maximum number of entries that can be appended
            to a metric report.  When the metric report reaches its limit, its behavior
            is dictated by the ReportUpdates property.
          minimum: 0
          readOnly: true
          type: integer
          x-longDescription: This property shall be a number that indicates the maximum
            number of entries that can be appended to a metric report.  When the metric
            report reaches its limit, its behavior shall be dictated by the ReportUpdates
            property.  This property shall be required if ReportUpdates is either
            AppendWrapsWhenFull or AppendStopsWhenFull.
        Description:
          $ref: http://redfish.dmtf.org/schemas/v1/Resource.yaml#/components/schemas/Resource_Description
          nullable: true
          readOnly: true
        Id:
          $ref: http://redfish.dmtf.org/schemas/v1/Resource.yaml#/components/schemas/Resource_Id
          readOnly: true
        Links:
          $ref: '#/components/schemas/MetricReportDefinition_v1_2_0_Links'
          description: Contains references to other resources that are related to
            this resource.
          x-longDescription: The Links property, as described by the Redfish Specification,
            shall contain references to resources that are related to, but not contained
            by (subordinate to), this resource.
          x-versionAdded: v1_2_0
        MetricProperties:
          description: A 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 array property.
          format: uri-reference
          items:
            nullable: true
            type: string
          readOnly: false
          type: array
          x-longDescription: This array property shall contain a list of URIs with
            wildcards and property identifiers to include in the metric report. Each
            wildcard in the URI shall be delimited by a set of curly braces. Each
            wildcard shall be substituted as specified by the corresponding entry
            in the Wildcard array property.  Once an URI with wildcards has had its
            wildcards fully substituted, it shall reference a resource property to
            include in the metric report. The property identifiers portion of the
            URI shall follow JSON fragment notation rules defined by RFC6901.
        MetricReport:
          $ref: http://redfish.dmtf.org/schemas/v1/odata-v4.yaml#/components/schemas/odata-v4_idRef
          description: Specifies the location where the resultant metric report is
            placed.
          readOnly: true
          x-longDescription: This property shall be a reference to the resource where
            the resultant metric report is placed.
        MetricReportDefinitionEnabled:
          description: This indicates whether this MetricReportDefinition is enabled.
          nullable: true
          readOnly: false
          type: boolean
          x-longDescription: The value of this property shall be a boolean indicating
            whether this MetricReportDefinition is enabled for generating new MetricReports.
          x-versionAdded: v1_2_0
        MetricReportDefinitionType:
          $ref: '#/components/schemas/MetricReportDefinition_v1_2_0_MetricReportDefinitionType'
          description: Specifies when the metric report is generated.
          nullable: true
          readOnly: false
          x-longDescription: The value shall specify when the metric report is generated.  If
            the value of the property is 'Periodic', then the Schedule property shall
            be present.
        MetricReportHeartbeatInterval:
          description: This property specifices an interval to send complete MetricReport
            regardless of whether values have changed.  It is used in addition to
            the ReccurranceInterval where SuppressRepeatedMetricValue is Enabled and
            the Redfish client desired to be refreshed with metric data occasionally
            regardless of whether the data is changed or not.
          nullable: true
          pattern: -?P(\d+D)?(T(\d+H)?(\d+M)?(\d+(.\d+)?S)?)?
          readOnly: false
          type: string
          x-longDescription: The property value shall be a Redfish Duration describing
            the time internal between generation of the unsuppressed MetricReport.  It
            shall always be a value greater than the RecurranceInterval of a MetricReport
            and should only be applicable when the SuppressRepeatedMetricValue property
            is Enabled.
          x-versionAdded: v1_2_0
        Metrics:
          description: Specifies a list of metrics to include in the metric report.  The
            metrics may include metric properties or calculations applied to a metric
            property.
          items:
            $ref: '#/components/schemas/MetricReportDefinition_v1_2_0_Metric'
          type: array
          x-longDescription: The property shall specify a list of metrics to include
            in the metric report.  The metrics may include metric properties or calculations
            applied to a metric property.
        Name:
          $ref: http://redfish.dmtf.org/schemas/v1/Resource.yaml#/components/schemas/Resource_Name
          readOnly: true
        Oem:
          $ref: http://redfish.dmtf.org/schemas/v1/Resource.yaml#/components/schemas/Resource_Oem
          description: This is the manufacturer/provider specific extension moniker
            used to divide the Oem object into sections.
          x-longDescription: The value of this string shall be of the format for the
            reserved word *Oem*.
        ReportActions:
          description: Specifies the actions to perform when a metric report is generated.
          items:
            $ref: '#/components/schemas/MetricReportDefinition_v1_2_0_ReportActionsEnum'
          readOnly: true
          type: array
          x-longDescription: The value of this property shall specify the actions
            to perform when the metric report is generated.  The options are transmit
            an event or create a metric report resource.
        ReportUpdates:
          $ref: '#/components/schemas/MetricReportDefinition_v1_2_0_ReportUpdatesEnum'
          description: When logging metric reports, specifies how subsequent metric
            reports are handled in relationship to an existing metric report created
            from the metric report definition.  Namely, whether to overwrite, append,
            or create new report resource.
          readOnly: true
          x-longDescription: The value of this property shall specify how subsequent
            metric reports are handled in relationship to an existing metric report
            created from the metric report definition.
        Schedule:
          $ref: http://redfish.dmtf.org/schemas/v1/Schedule.yaml#/components/schemas/Schedule_Schedule
          description: Specifies the schedule for generating the metric report.
          x-longDescription: If the schedule present, the metric report is generated
            at an interval specified by Schedule.RecurrenceInterval property.  If
            Schedule.MaxOccurrences is specified, the metric report will no longer
            be generated after the specified number of occurances.
        Status:
          $ref: http://redfish.dmtf.org/schemas/v1/Resource.yaml#/components/schemas/Resource_Status
          description: This property describes the status and health of the resource
            and its children.
          x-longDescription: This property shall contain any status or health properties
            of the resource.
        SuppressRepeatedMetricValue:
          description: A value of true indicates that any Metric in the MetricReport
            currently be generated will be suppressed and not included in the MetricReport
            when the value of the Metric equals the value of the same Metric in the
            previously generated MetricReport.  A value of false means that the suppression
            mechanism is not applied to the MetricReport being generated.  A MetricReport
            may be generated with no MetricProperty array values if all Metrics had
            the same values as in the previously generated MetricReport.
          nullable: true
          readOnly: false
          type: boolean
          x-longDescription: The value of this property shall indicate whether suppression
            of Metric information has been enabled or not.  A value of true shall
            indicate that any Metric in the MetricReport currently be generated will
            be suppressed and not included in the MetricReport.MetricProperties array
            when the value of the Metric equals the value of the same Metric in the
            previously generated MetricReport or within the current MetricReport being
            generated is the same Metric would be instantiated multiple times.  A
            value of false means that the suppression mechanism is not applied to
            the MetricReport being generated.
          x-versionAdded: v1_2_0
        Wildcards:
          description: A list of wildcards and their substitution values to be applied
            to the entries in the MetricProperties array property.
          items:
            $ref: '#/components/schemas/MetricReportDefinition_v1_2_0_Wildcard'
          type: array
          x-longDescription: The property shall contain a list of wildcards and their
            replacement strings, which are applied to the MetricProperties array property.
            Each wildcard shall have a corresponding entry in this array property.
      required:
      - '@odata.id'
      - '@odata.type'
      - Id
      - Name
      type: object
      x-longDescription: This resource specifies a set of metrics that shall be collected
        into a metric report.
      x-patternProperties:
        ^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\.[a-zA-Z_][a-zA-Z0-9_]*$:
          description: This property shall specify a valid odata or Redfish property.
    MetricReportDefinition_v1_2_0_MetricReportDefinitionType:
      description: Indicates when the metric report is generated.
      enum:
      - Periodic
      - OnChange
      - OnRequest
      type: string
      x-enumDescriptions:
        OnChange: The metric report is generated when any of the metric values change.
        OnRequest: The metric report is generated when a HTTP GET is performed on
          the specified metric report.
        Periodic: The metric report is generated at a periodic time interval, specified
          in the Schedule property.
      x-longDescription: The value shall specify when the metric report is generated.
    MetricReportDefinition_v1_2_0_OemActions:
      additionalProperties: true
      description: The available OEM specific actions for this resource.
      properties: {}
      type: object
      x-longDescription: This type shall contain any additional OEM actions for this
        resource.
      x-patternProperties:
        ^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\.[a-zA-Z_][a-zA-Z0-9_]*$:
          description: This property shall specify a valid odata or Redfish property.
    MetricReportDefinition_v1_2_0_ReportActionsEnum:
      description: Actions to perform when a metric report is generated.
      enum:
      - LogToMetricReportsCollection
      - RedfishEvent
      type: string
      x-enumDescriptions:
        LogToMetricReportsCollection: When a metric report is scheduled to be generated,
          record the occurrence to the Metric Report Collection.
        RedfishEvent: When a metric report is scheduled to be generated, send a Redfish
          Event message of type MetricReport.
      x-enumLongDescriptions:
        LogToMetricReportsCollection: When a metric report is scheduled to be generated,
          the service shall record the occurrence to the Metric Report Collection
          found under the Telemetry Service.  The service shall update the Metric
          Report Collection based on the setting of the ReportUpdates property.
        RedfishEvent: When a metric report is scheduled to be generated, the service
          shall produce a Redfish Event of type MetricReport to matching subscribers
          indicated in the EventSubscription collection found on the EventService.
      x-longDescription: The value shall specify the actions to perform when a metric
        report is generated.
    MetricReportDefinition_v1_2_0_ReportUpdatesEnum:
      description: How to what to do with subsequent metric reports when a metric
        report already exists.
      enum:
      - Overwrite
      - AppendWrapsWhenFull
      - AppendStopsWhenFull
      - NewReport
      type: string
      x-enumDescriptions:
        AppendStopsWhenFull: When a metric report is updated, append to the specified
          metric report resource.  This also indicates that the metric report stops
          adding entries when the metric report has reached its maximum capacity.
        AppendWrapsWhenFull: When a metric report is updated, append to the specified
          metric report resource.  This also indicates that the metric report overwrites
          its entries with new entries when the metric report has reached its maximum
          capacity.
        NewReport: When a metric report is updated, create a new metric report resource,
          whose resource name is the metric report resource name concatenated with
          the timestamp.
        Overwrite: When a metric report is updated, overwrite the specified metric
          report resource.
      x-longDescription: The value shall specify what to do with subsequent metric
        reports when a metric report already exists.
    MetricReportDefinition_v1_2_0_Wildcard:
      additionalProperties: false
      description: Contains a wildcard and its substitution values.
      properties:
        Keys:
          deprecated: true
          description: An array of values to substitute for the wildcard.
          items:
            nullable: true
            type: string
          readOnly: true
          type: array
          x-deprecatedReason: This property has been Deprecated in favor of using
            the property 'Values'.
          x-longDescription: This property shall contain the list of values to substitute
            for the wildcard.
          x-versionDeprecated: v1_1_0
        Name:
          description: The string used as a wildcard.
          nullable: true
          readOnly: true
          type: string
          x-longDescription: This property shall contain the string used as a wildcard.
        Values:
          description: An array of values to substitute for the wildcard.
          items:
            nullable: true
            type: string
          readOnly: true
          type: array
          x-longDescription: This property shall contain the list of values to substitute
            for the wildcard.
          x-versionAdded: v1_1_0
      type: object
      x-longDescription: This property shall contain a wildcard and its substitution
        values.
      x-patternProperties:
        ^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\.[a-zA-Z_][a-zA-Z0-9_]*$:
          description: This property shall specify a valid odata or Redfish property.
title: '#MetricReportDefinition.v1_2_0.MetricReportDefinition'
x-copyright: Copyright 2014-2019 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright
x-owningEntity: DMTF
x-release: '2019.1'
