components:
  schemas:
    MetricReportDefinition_v1_0_0_Actions:
      additionalProperties: false
      description: The available actions for this resource.
      properties:
        Oem:
          $ref: '#/components/schemas/MetricReportDefinition_v1_0_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_0_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_0_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_0_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_0_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_0_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
          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_0_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_0_3.yaml#/components/schemas/odata_v4_0_3_context
        '@odata.etag':
          $ref: http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.yaml#/components/schemas/odata_v4_0_3_etag
        '@odata.id':
          $ref: http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.yaml#/components/schemas/odata_v4_0_3_id
        '@odata.type':
          $ref: http://redfish.dmtf.org/schemas/v1/odata.v4_0_3.yaml#/components/schemas/odata_v4_0_3_type
        Actions:
          $ref: '#/components/schemas/MetricReportDefinition_v1_0_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
        MetricProperties:
          description: Specifies a list of metric properties to include in the metric
            report.
          format: uri
          items:
            nullable: true
            type: string
          readOnly: false
          type: array
          x-longDescription: This property shall specify the metric properties to
            include in the metric report.  Each entry shall be a URI, and may contain
            wildcards.  The wildcards shall be enclosed by curly braces.  The list
            of metric properties to include shall be constructed by replacing wildcards
            with the value in the Wildcard property.  Property identifiers in 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.
        MetricReportDefinitionType:
          $ref: '#/components/schemas/MetricReportDefinition_v1_0_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.
        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_0_0_Metric'
            nullable: true
          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_0_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_0_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.
        Wildcards:
          description: Specifies the strings used to replace wildcards in the paths
            in MetricProperties array property.
          items:
            $ref: '#/components/schemas/MetricReportDefinition_v1_0_0_Wildcard'
            nullable: true
          type: array
          x-longDescription: The property shall specify an array of strings used to
            replace wildcards in the paths in the MetricProperties 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_0_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_0_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_0_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_0_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_0_0_Wildcard:
      additionalProperties: false
      description: Contains a list of wildcards and their substitution values.
      properties:
        Keys:
          description: An array of Key values to substitute for the wildcard.
          items:
            nullable: true
            type: string
          readOnly: true
          type: array
          x-longDescription: If the value is an empty string, then the server shall
            substitute every current key.  Each not empty key value shall be substituted
            for the wildcard.
        Name:
          description: The name of Wildcard.
          nullable: true
          readOnly: true
          type: string
          x-longDescription: This property shall contain a name for a Wildcard for
            a key.
      type: object
      x-longDescription: Each wildcard shall have a corresponding entry in this list
        element.  Each entry shall specified the 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_0_0.MetricReportDefinition'
x-copyright: Copyright 2014-2018 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright
x-owningEntity: DMTF
