blob: 78a1fd7539e7fc499caafa17b527389f7a23d8a3 [file] [log] [blame]
description: >
Implement to provide reports management. Contain information about report
limitations and allows to add report.
methods:
- name: AddReport
description: >
Create new object that represents Report with
xyz.openbmc_project.Telemetry.Report interface stored in path
/xyz/openbmc_project/Telemetry/Reports/{properties[Id]} where
properties[Id] is passed into this method as a parameter.
parameters:
- name: properties
type: array[dict[string,variant[boolean,uint32,uint64,string,enum[xyz.openbmc_project.Telemetry.Report.ReportingType],enum[xyz.openbmc_project.Telemetry.Report.ReportUpdates],array[enum[xyz.openbmc_project.Telemetry.Report.ReportActions]],array[struct[array[struct[object_path,string]],enum[xyz.openbmc_project.Telemetry.Report.OperationType],string,enum[xyz.openbmc_project.Telemetry.Report.CollectionTimescope],uint64]]]]]
description: >
Map of properties defining added report object. Key is the
string identifier of property. Value is a variant, whose
underlying type is dependent from the key. Possible key values
are: Id, Name, ReportingType, ReportActions, Interval,
AppendLimit, ReportUpdates, MetricParams, Enabled. All keys are
optional, therefore it is acceptable to pass an empty map here.
Id (string) - unique identifier of created Report object to be
exposed over D-Bus. Acceptable formats are: "{Id}",
"{Prefix}/{SubId}", "{Prefix}/". If the last variant is used,
service will generate unique SubId value by itself.
Name (string) - user friendly name of created Report object.
ReportingType (enum[
xyz.openbmc_project.Telemetry.Report.ReportingType]) - indicates
when readings should be updated. Possible values are listed in
Report interface documentation.
ReportActions (array[enum[
xyz.openbmc_project.Telemetry.Report.ReportActions]]) - possible
additional actions to trigger after readings' update, as
specified in Report interface documentation.
Interval (uint64) - period of time in milliseconds when Report
is updated with new readings. Minimal interval is defined in
MinInterval property.
AppendLimit (size) - maximum number of entries in 'Readings'
property.
ReportUpdates (enum[
xyz.openbmc_project.Telemetry.Report.ReportUpdates]) - indicates
how readings should be updated. Possible values are listed in
Report interface documentation.
MetricParams (array[struct[array[struct[object_path,string]],
enum[xyz.openbmc_project.Telemetry.Report.OperationType],string,
enum[xyz.openbmc_project.Telemetry.Report.CollectionTimescope],
uint64]]) - array of metric parameters, which are stored in a
way specified in description of ReadingParameters property from
Report interface documentation.
Enabled (boolean) - indicates if readings in report will be
updated.
returns:
- name: reportPath
type: object_path
description: >
Path to new report ->
/xyz/openbmc_project/Telemetry/Reports/{parameters[Id]}.
properties:
- name: MaxReports
type: size
description: >
Contains the max number of metric reports supported by the Telemetry.
This property is added to be compliant with the Redfish Telemetry
Service schema, that contains MaxReports property.
flags:
- const
- name: MinInterval
type: uint64
description: >
Minimal allowed time between readings property updates. It limits
Interval property in xyz.openbmc_project.Telemetry.Report and interval
parameter in AddReport method.
flags:
- const
- name: SupportedOperationTypes
type: array[enum[xyz.openbmc_project.Telemetry.Report.OperationType]]
description: >
Contains subset of operation types currently supported by this
service.
flags:
- const