xref: /openbmc/telemetry/README.md (revision 3a1c297a)
1# Telemetry
2
3This component implements middleware for sensors and metrics aggregation.
4
5## Capabilities
6
7This application is implementation of Telemetry proposed in OpenBMC design docs
8`[1]`.
9
10It's responsible for:
11
12- on-demand creation of metric reports,
13  - aggregated sets of sensor values available in system `[2]`,
14- access to metric report in both pull and push model (triggers),
15- run-time monitoring of sensor`[3]` updates.
16
17## Use-cases
18
19- generic and centralized way to observe telemetry data inside system
20- back-end for Redfish TelemetryService`[4]`
21
22## How to build
23
24There are two way to build telemetry service:
25
26- using bitbake in yocto environment
27- using meson as native build
28
29To build it using bitbake follow the guide from OpenBMC docs`[5]`. To build it
30using meson follow the quick guide to install meson`[6]` and then run below
31commands
32
33```sh
34meson build
35cd build
36ninja
37```
38
39After successful build you should be able to run telemetry binary or start unit
40tests
41
42```sh
43./tests/telemetry-ut
44./telemetry
45```
46
47In case if system is missing boost dependency, it is possible to build it
48locally and set BOOST_ROOT environment variable to location of built files for
49meson. After this change meson should be able to detect boost dependency. See
50`[7]` for more details.
51
52## Notes
53
54More information can be found in OpenBMC docs repository `[8]`.
55
56## References
57
581. [OpenBMC platform telemetry design](https://github.com/openbmc/docs/blob/master/designs/telemetry.md)
592. [Sensor support for OpenBMC](https://github.com/openbmc/docs/blob/master/architecture/sensor-architecture.md)
603. [dbus-sensors](https://github.com/openbmc/dbus-sensors)
614. [Redfish TelemetryService](https://redfish.dmtf.org/schemas/v1/TelemetryService.json)
625. [Yocto-development](https://github.com/openbmc/docs/blob/master/yocto-development.md)
636. [Meson-Quick-Guide](https://mesonbuild.com/Quick-guide.html)
647. [Meson-Boost-dependency](https://mesonbuild.com/Dependencies.html#boost)
658. [OpenBMC-docs-repository](https://github.com/openbmc/docs)
66