blob: ccaf8a6fcfc8671314a74825c640fe54812963ee [file] [log] [blame]
Krzysztof Grobelny53647642020-06-25 11:45:38 +02001description: >
2 Implement to provide reports management. Contain information about report
3 limitations and allows to add report.
4
5methods:
Patrick Williams8da396c2022-03-14 14:21:02 -05006 - name: AddReport
7 description: >
Michal Orzel4f9c0912022-08-01 10:20:46 +02008 Create new object that represents Report with
Patrick Williams8da396c2022-03-14 14:21:02 -05009 xyz.openbmc_project.Telemetry.Report interface stored in path
Michal Orzel4f9c0912022-08-01 10:20:46 +020010 /xyz/openbmc_project/Telemetry/Reports/{properties[Id]} where
11 properties[Id] is passed into this method as a parameter.
Patrick Williams8da396c2022-03-14 14:21:02 -050012 parameters:
Krzysztof Grobelny021f6d42023-02-08 09:00:12 +000013 - name: Id
14 type: string
Patrick Williams8da396c2022-03-14 14:21:02 -050015 description: >
Krzysztof Grobelny021f6d42023-02-08 09:00:12 +000016 Unique identifier of created Report object to be exposed over
17 D-Bus. Acceptable formats are: "{Id}", "{Prefix}/{SubId}",
18 "{Prefix}/". If the last variant is used, service will generate
19 unique SubId value by itself.
20 - name: Name
21 type: string
22 description: >
23 User friendly name of created Report object.
24 - name: reportingType
25 type: enum[xyz.openbmc_project.Telemetry.Report.ReportingType]
26 description: >
27 Indicates when readings should be updated. Possible values are
28 listed in Report interface documentation.
29 - name: ReportUpdates
30 type: enum[xyz.openbmc_project.Telemetry.Report.ReportUpdates]
31 description: >
32 Indicates how readings should be updated. Possible values are
33 listed in Report interface documentation.
34 - name: AppendLimit
35 type: size
36 description: >
37 Maximum number of entries in 'Readings' property.
38 - name: ReportActions
39 type: array[enum[xyz.openbmc_project.Telemetry.Report.ReportActions]]
40 description: >
41 Possible additional actions to trigger after readings' update,
42 as specified in Report interface documentation.
43 - name: Interval
44 type: uint64
45 description: >
46 Period of time in milliseconds when Report is updated with new
47 readings. Minimal interval is defined in MinInterval property.
48 - name: MetricParams
49 type: array[struct[array[struct[object_path,string]],enum[xyz.openbmc_project.Telemetry.Report.OperationType],string,enum[xyz.openbmc_project.Telemetry.Report.CollectionTimescope],uint64]]
50 description: >
51 Array of metric parameters, which are stored in a way specified
52 in description of ReadingParameters property from Report
53 interface documentation.
54 - name: Enabled
55 type: boolean
56 description: >
57 Indicates if readings in report will be updated.
Patrick Williams8da396c2022-03-14 14:21:02 -050058 returns:
59 - name: reportPath
60 type: object_path
61 description: >
Michal Orzel4f9c0912022-08-01 10:20:46 +020062 Path to new report ->
63 /xyz/openbmc_project/Telemetry/Reports/{parameters[Id]}.
Krzysztof Grobelny53647642020-06-25 11:45:38 +020064
65properties:
Patrick Williams8da396c2022-03-14 14:21:02 -050066 - name: MaxReports
67 type: size
68 description: >
69 Contains the max number of metric reports supported by the Telemetry.
70 This property is added to be compliant with the Redfish Telemetry
71 Service schema, that contains MaxReports property.
72 flags:
73 - const
74 - name: MinInterval
75 type: uint64
76 description: >
77 Minimal allowed time between readings property updates. It limits
Patrick Williamsa1347412022-12-06 10:56:22 -060078 Interval property in xyz.openbmc_project.Telemetry.Report and interval
79 parameter in AddReport method.
Patrick Williams8da396c2022-03-14 14:21:02 -050080 flags:
81 - const
Michal Orzel4f9c0912022-08-01 10:20:46 +020082 - name: SupportedOperationTypes
83 type: array[enum[xyz.openbmc_project.Telemetry.Report.OperationType]]
84 description: >
85 Contains subset of operation types currently supported by this
86 service.
87 flags:
88 - const