#
77ae514b |
| 21-Jul-2023 |
Patrick Williams <patrick@stwcx.xyz> |
build: upgrade to C++23
Meson 1.1.1 and GCC-13 both support C++23 and a sufficient portion of the standard has been implemented. Upgrade the build to leverage it.
Change-Id: Id155ce5591163912ec496
build: upgrade to C++23
Meson 1.1.1 and GCC-13 both support C++23 and a sufficient portion of the standard has been implemented. Upgrade the build to leverage it.
Change-Id: Id155ce5591163912ec496cb9afa3ca34343c3f8c Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
495aba1f |
| 07-Feb-2024 |
Patrick Williams <patrick@stwcx.xyz> |
meson: remove Boost TS executors
BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT enables the older Networking TS executors instead of the newer "Standard Executors" and is not necessary for io_uring. Remove
meson: remove Boost TS executors
BOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT enables the older Networking TS executors instead of the newer "Standard Executors" and is not necessary for io_uring. Remove this option to use the newer execution model.
Tested:
Confirmed the io_uring interfaces are still being used. ``` (gdb) bt #0 0x00007ffff7dfba47 in ?? () from /usr/lib64/liburing.so.2 #1 0x00007ffff7dfbca2 in __io_uring_get_cqe () from /usr/lib64/liburing.so.2 #2 0x000055555556dd72 in io_uring_wait_cqe_nr (ring=0x555555807c30, cqe_ptr=0x7fffffffd9f0, wait_nr=1) at /usr/include/liburing.h:1175 #3 0x000055555556df08 in io_uring_wait_cqe (ring=0x555555807c30, cqe_ptr=0x7fffffffd9f0) at /usr/include/liburing.h:1248 #4 0x000055555557ff4f in boost::asio::detail::io_uring_service::run (this=0x555555807bf0, usec=-1, ops=...) at ../subprojects/boost_1_83_0/boost/asio/detail/impl/io_uring_service.ipp:437 #5 0x000055555557e7a4 in boost::asio::detail::scheduler::do_run_one (this=0x555555806020, lock=..., this_thread=..., ec=...) at ../subprojects/boost_1_83_0/boost/asio/detail/impl/scheduler.ipp:477 #6 0x000055555557e27a in boost::asio::detail::scheduler::run (this=0x555555806020, ec=...) at ../subprojects/boost_1_83_0/boost/asio/detail/impl/scheduler.ipp:210 #7 0x0000555555581725 in boost::asio::io_context::run (this=0x7fffffffdc90) at ../subprojects/boost_1_83_0/boost/asio/impl/io_context.ipp:64 #8 0x0000555555573af0 in main () at ../src/HwmonTempMain.cpp:643 ```
Ran QEMU for Bletchley and observed HwmonTempSensor still works: ``` root@bletchley:~# busctl introspect xyz.openbmc_project.HwmonTempSensor /xyz/openbmc_project/sensors/temperature/SLED1_THERM_LOCAL xyz.openbmc_project.Sensor.Value NAME TYPE SIGNATURE RESULT/VALUE FLAGS .MaxValue property d 127 emits-change .MinValue property d -128 emits-change .Unit property s "xyz.openbmc_project.Sensor.Value.Uni... emits-change .Value property d 0 emits-change writable ```
Checking strace yields lots of io_uring related calls: ``` root@bletchley:~# strace -p 960 strace: Process 960 attached io_uring_enter(4, 0, 1, IORING_ENTER_GETEVENTS, NULL, 8) = 0 clock_gettime64(CLOCK_MONOTONIC, {tv_sec=240, tv_nsec=810659232}) = 0 clock_gettime64(CLOCK_MONOTONIC, {tv_sec=240, tv_nsec=813407042}) = 0 io_uring_enter(4, 2, 0, 0, NULL, 8) = 2 clock_gettime64(CLOCK_MONOTONIC, {tv_sec=240, tv_nsec=816897328}) = 0 io_uring_enter(4, 0, 1, IORING_ENTER_GETEVENTS, NULL, 8) = 0 clock_gettime64(CLOCK_MONOTONIC, {tv_sec=240, tv_nsec=822788059}) = 0 clock_gettime64(CLOCK_MONOTONIC, {tv_sec=240, tv_nsec=824535222}) = 0 ```
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I0eb1d732a9bc3bb25e625b9f8fe3eeeaf8ae3143
show more ...
|
#
a47e082e |
| 03-Jan-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
subprojects: Bump boost to 1.83
Bump to avoid issues such as the following:
``` In file included from ../src/Utils.hpp:3, from ../src/Thresholds.hpp:3, from ../src
subprojects: Bump boost to 1.83
Bump to avoid issues such as the following:
``` In file included from ../src/Utils.hpp:3, from ../src/Thresholds.hpp:3, from ../src/sensor.hpp:6, from ../src/PwmSensor.hpp:3, from ../src/PwmSensor.cpp:17: ../src/VariantVisitors.hpp:18:10: fatal error: boost/type_index.hpp: No such file or directory 18 | #include <boost/type_index.hpp> | ^~~~~~~~~~~~~~~~~~~~~~ ```
1.83 is used by openbmc/openbmc@43471c8c565d346c1727ba2360db373035234c26
With the bump I can now successfully build dbus-sensors on Debian Bookworm with `meson setup --cross-file=gcc-13 build`[1], even if boost libraries and headers of varying version are installed via `apt`.
[1]: https://amboar.github.io/notes/2023/09/12/unstable-gcc-on-debian-stable.html
Change-Id: I43cb95167ede3271cc6ce6ea6ea5421911b575c0 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
#
e4f21f80 |
| 03-Jan-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
meson: Order dependencies as an approximate in-order tree traversal
meson appears to not be terribly fancy about resolving dependency constraints. Dependencies appear to be evaluated in their order
meson: Order dependencies as an approximate in-order tree traversal
meson appears to not be terribly fancy about resolving dependency constraints. Dependencies appear to be evaluated in their order of declaration, as an in-order tree traversal. This ordering is problematic for escalating version constraints.
As a concrete example, we currently declare `dependency('sdbusplus')` before `dependency('boost')`. sdbusplus itself depends on boost, without a version constraint. If boost is available on the build system then this is selected. However, dbus-sensors' boost dependency may have a version constraint of e.g. >=1.83.0. In this arrangement we hit the the following error:
``` sdbusplus| Run-time dependency Boost found: YES 1.81.0 (/usr/include) ... Dependency boost found: NO found 1.81.0 but need: '>=1.83.0' (cached)
meson.build:67:8: ERROR: Dependency 'boost' is required but not found. ```
Declare (common) dependencies as an approximate in-order traversal to avoid conflicts.
Change-Id: I0277061f3ac36361495183018293a61163d70a36 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
#
1d7b4788 |
| 03-Jan-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
meson: Improve boost integration
Currently we hit the following:
``` $ meson setup --force-fallback-for=boost build ... WARNING: Subproject 'boost' did not override 'boost' dependency and no variab
meson: Improve boost integration
Currently we hit the following:
``` $ meson setup --force-fallback-for=boost build ... WARNING: Subproject 'boost' did not override 'boost' dependency and no variable name specified Dependency boost from subproject subprojects/boost found: NO meson.build:57: WARNING: include_directories sandbox violation! The project is trying to access the directory 'subprojects/boost_1_79_0/' which belongs to a different subproject. This is a problem as it hardcodes the relative paths of these two projects. This makes it impossible to compile the project in any other directory layout and also prevents the subproject from changing its own directory layout.
Instead of poking directly at the internals the subproject should be executed and it should set a variable that the caller can then use. Something like:
# In subproject some_dep = declare_dependency(include_directories: include_directories('include'))
# In subproject wrap file [provide] some = some_dep
# In parent project some_dep = dependency('some') executable(..., dependencies: [some_dep])
This warning will become a hard error in a future Meson release.
meson.build:57:14: ERROR: Include dir subprojects/boost_1_79_0/ does not exist. ```
Address the sandbox violation and reduce the amount of configuration noise in meson.build by providing an appropriate wrap via packagefiles.
Change-Id: I4063764d2c3a00f58d3c83712092303538b64843 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
#
dc8012fc |
| 03-Jan-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
meson: Clean up specification of sdbusplus dependency
The manual attempt at handling a fallback is unnecessary - let meson do the work for us in the idiomatic way of deferring to a wrap of the same
meson: Clean up specification of sdbusplus dependency
The manual attempt at handling a fallback is unnecessary - let meson do the work for us in the idiomatic way of deferring to a wrap of the same name.
Change-Id: Ie7682771a96680a5093391bff2eaf9b4d16b6696 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
#
2673b9a5 |
| 03-Jan-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
meson: Clean up specification of liburing dependency
The manual attempt at handling a fallback is unnecessary - let meson do the work for us in the idiomatic way of deferring to a wrap of the same n
meson: Clean up specification of liburing dependency
The manual attempt at handling a fallback is unnecessary - let meson do the work for us in the idiomatic way of deferring to a wrap of the same name.
Change-Id: Iffe648e3edfa9155a7652e323f04cf762f1b0bf4 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
#
8a9ff14a |
| 03-Jan-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
meson: Move unit-file-related definitions to service_files/meson.build
In the spirit of keeping-things-that-are-together-together, move the dependency declaration to where it's used. We only declare
meson: Move unit-file-related definitions to service_files/meson.build
In the spirit of keeping-things-that-are-together-together, move the dependency declaration to where it's used. We only declare the dependency on systemd to grab the unit directory path.
Change-Id: I5bdda184ade023ee38b0d33dd1c5a9c118bf3b8a Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
#
771e5292 |
| 03-Jan-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
meson: Remove single-use build_tests variable
Change-Id: I186367f84c569a1ef1a2c32466d18fbbc33bfd65 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
|
#
88a57e00 |
| 03-Jan-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
meson: Drop redundant `cpp` variable from build specification
Change-Id: I5a072ed7b73d18c7830ebe2fc464bdddc657eabb Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
|
#
8eb514a4 |
| 03-Jan-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
meson: Require meson 1.1
Fixes the following warnings:
``` WARNING: Project specifies a minimum meson_version '>=0.58.0' but uses features which were added in newer versions: * 0.59.0: {'feature_o
meson: Require meson 1.1
Fixes the following warnings:
``` WARNING: Project specifies a minimum meson_version '>=0.58.0' but uses features which were added in newer versions: * 0.59.0: {'feature_option.allowed()'} * 1.1: {'meson.options file'} ```
Additionally, with the bump, fix the following warning:
``` WARNING: Deprecated features used: * 0.64.0: {'copy arg in configure_file'} ```
Change-Id: I3b678769674f64e9050b4aa85fe6775c556ea8f6 Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
#
ab8b045e |
| 10-Jan-2024 |
Andrew Jeffery <andrew@codeconstruct.com.au> |
meson: Format build files according to meson style guide
muon[1], an meson-compatible build system, provides a `fmt` subcommand to format meson build files in accordance with the meson style guide[2
meson: Format build files according to meson style guide
muon[1], an meson-compatible build system, provides a `fmt` subcommand to format meson build files in accordance with the meson style guide[2].
[1]: https://muon.build/ [2]: https://mesonbuild.com/Style-guide.html
Apply `muon fmt` using the following to provide consistent formatting:
``` for f in $(git ls-files | grep meson.build) do muon fmt $f | sponge $f done ```
Change-Id: I7ef7693ddf964e9540b2e3e256cdf584fb8ac9cd Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
show more ...
|
#
ab570a60 |
| 07-Dec-2023 |
Patrick Williams <patrick@stwcx.xyz> |
meson: adjust nlohmann-json dependency
Simplify meson dependency logic and align wrap file name choice with other repositories.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I53883
meson: adjust nlohmann-json dependency
Simplify meson dependency logic and align wrap file name choice with other repositories.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I5388303c3a5227cfd3981878354cc62b90ebcb99
show more ...
|
#
a0c6b5b7 |
| 06-Jun-2023 |
Zhikui Ren <zhikui.ren@intel.com> |
Add uring_args for all build targets in package
io_uring backend is enabled with uring_args. Add them to package args. All build targets including static libraries for utils and thresholds and senso
Add uring_args for all build targets in package
io_uring backend is enabled with uring_args. Add them to package args. All build targets including static libraries for utils and thresholds and sensor services executables are built consistently.
Currently steady timer in utils.cpp fires right away for services build with io_uring enabled like fansensor, hwmontempsensor. https://github.com/openbmc/dbus-sensors/blob/master/src/Utils.cpp#L472
Tested: Added debug print and verified the above timer handler is called 10 seconds after the timer is started as expected. intelcpusensor, which does not use random_access_file with io_uring backend reads sensor values successfully. Services use random_access_file read sensor data successfully.
Signed-off-by: Zhikui Ren <zhikui.ren@intel.com> Change-Id: I8cf3a9a0d1ffca459eb6c2c37e4e2220ce5100ac
show more ...
|
#
e46b4444 |
| 12-Apr-2023 |
Patrick Williams <patrick@stwcx.xyz> |
meson: remove deprecated get_pkgconfig_variable
Since meson 0.56, the `get_pkgconfig_variable` has been deprecated. In meson 0.58 the `get_variable` was enhanced to no longer require the `pkgconfig
meson: remove deprecated get_pkgconfig_variable
Since meson 0.56, the `get_pkgconfig_variable` has been deprecated. In meson 0.58 the `get_variable` was enhanced to no longer require the `pkgconfig` keyword argument. Ensure meson 0.58 is required and update the usage of all `get_pkgconfig_variable` and `get_variable` to be the modern variant.
Change-Id: Ifcccb5c41390dea284834ace0ec286b019a995d3 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
#
83db50ca |
| 01-Mar-2023 |
Ed Tanous <edtanous@google.com> |
Don't use deprecated asio functions
This code used a number of asio functions that have been deprecated. This patch replaces them with their new equivalents, and enabled BOOST_ASIO_NO_DEPRECATED.
C
Don't use deprecated asio functions
This code used a number of asio functions that have been deprecated. This patch replaces them with their new equivalents, and enabled BOOST_ASIO_NO_DEPRECATED.
Change-Id: I98bddba4c7d72a53ceca9455429828e60f06c5e0 Signed-off-by: Ed Tanous <edtanous@google.com>
show more ...
|
#
e73bd0a1 |
| 24-Jan-2023 |
Andrew Jeffery <andrew@aj.id.au> |
sensors: Align source structure away from anti-patterns
The anti-patterns document comments on source structure, specifically on placing internal headers in a parallel subtree[1]. dbus-sensors is an
sensors: Align source structure away from anti-patterns
The anti-patterns document comments on source structure, specifically on placing internal headers in a parallel subtree[1]. dbus-sensors is an example of violating this anti-pattern, so fix it.
[1]: https://github.com/openbmc/docs/blob/master/anti-patterns.md#placing-internal-headers-in-a-parallel-subtree
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I50ecaddd53fa9c9b7a0441af9de5e60bd94e47c6
show more ...
|
#
dabd48dd |
| 03-Aug-2022 |
Zev Weiss <zev@bewilderbeest.net> |
Add device-management infrastructure
We're moving toward having dbus-sensors take over sensor device lifecycle management from entity-manager; this code (loosely based on entity-manager's include/de
Add device-management infrastructure
We're moving toward having dbus-sensors take over sensor device lifecycle management from entity-manager; this code (loosely based on entity-manager's include/devices.hpp and src/overlay.cpp) provides some general-purpose utilities for instantiating and destroying devices.
This also includes a variant of setupPropertiesChangedMatches() taking an I2CDeviceTypeMap instead of a span of C strings, so that we can support both existing sensor daemons and ones that get converted to use that instead of the simple string arrays they currently employ.
Signed-off-by: Zev Weiss <zev@bewilderbeest.net> Change-Id: I39fcd0de2c70cd58b4d132cdcae5f82319732dbb
show more ...
|
#
16966b55 |
| 15-Sep-2021 |
Ed Tanous <edtanous@google.com> |
Enable an io-uring build
There exists a bug where calls that we previously thought were non-blocking, actually do block when used with hwmon or filesystem fds. This causes high latencies on the dbus
Enable an io-uring build
There exists a bug where calls that we previously thought were non-blocking, actually do block when used with hwmon or filesystem fds. This causes high latencies on the dbus interfaces when lots of sensors are used in a single daemon, as is the case in PSUSensor.
This patchset moves the PSUSensor code over to using io-uring, through boost asio, using the random_access_file class. This helps with performance in a number of ways, the largest of which being that sensor reads are no longer blocking.
Tested:
Booted the sensor system on Tyan S7106; dbus-monitor shows sensors scanning normally.
Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: I654eafcfab5a24b65b89c204ab43d81c7ae064cf
show more ...
|
#
3f556a84 |
| 21-Mar-2022 |
Patrick Williams <patrick@stwcx.xyz> |
meson: simplify dependencies
Leverage wrapfile `[provide]` directives to simplify the dependency searching in the meson.build.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: If0797a
meson: simplify dependencies
Leverage wrapfile `[provide]` directives to simplify the dependency searching in the meson.build.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: If0797ab803bbc5b254487e2050c69deceb829976
show more ...
|
#
73030639 |
| 14-Jan-2022 |
Ed Tanous <edtanous@google.com> |
Enable cppcoreguidelines-avoid-goto checks
We've been pretty good about this one, the only usages seem to be in nvme sensor and added recently. To move to more RAII compliant containers, this commi
Enable cppcoreguidelines-avoid-goto checks
We've been pretty good about this one, the only usages seem to be in nvme sensor and added recently. To move to more RAII compliant containers, this commit creates a FileHandle class, which accepts either a file path and a mode, or a direct file handle, to be handled via RAII. Ideally we wouldn't have to create this ourselves, and could rely on some library, but the alternatives all have compromises that are worse.
boost::asio::random_access_file requires iouring to be enabled, and isn't available until boost 0.78, which we haven't rebased to yet. https://www.boost.org/doc/libs/develop/doc/html/boost_asio/reference/random_access_file.html Once available, this is what I would hope that a bunch of the nvme stuff evolves into to be much simpler.
boost::iostream::file_descriptor requires linking against boost::iostream, which would bloat our binary size for a lot of things we don't use. There is a file_descriptor.cpp that we could compile directly to solve this, but the existing yocto boost project (nor any other distro project) installs these files for use, which would complicate this solution
std::fstream doesn't allow direct access to the file handle, which would be required for streaming operations.
https://www.boost.org/doc/libs/1_35_0/libs/iostreams/doc/installation.html https://www.boost.org/doc/libs/1_78_0/libs/iostreams/doc/classes/file_descriptor.html#file_descriptor
A very similar class exists within ipmid here: https://github.com/openbmc/phosphor-host-ipmid/blob/master/user_channel/file.hpp
This class differs in a couple minor ways, in that it throws exceptions on open failures (similar to the boost classes), accepts the input by std::filesystem::path, instead of string, and supports std::move, which is required for the pipe usage.
Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: I8be2419783e41e8f529030bb3d05c2e7aa890307
show more ...
|
#
a771f6a7 |
| 14-Jan-2022 |
Ed Tanous <edtanous@google.com> |
Enable cppcoreguidelines-init-variables
We try to enforce this rule, but clearly the robot can do a better job. Enable the rule, and for init of all variables that clang-tidy finds in error.
Signed
Enable cppcoreguidelines-init-variables
We try to enforce this rule, but clearly the robot can do a better job. Enable the rule, and for init of all variables that clang-tidy finds in error.
Signed-off-by: Ed Tanous <edtanous@google.com> Change-Id: Icf64bc51b3180de29f7e92fa5c5f636e6b1462a6
show more ...
|
#
e3b23c06 |
| 22-Sep-2021 |
Andrew Jeffery <andrew@aj.id.au> |
meson: Disable PSABI warning We rebuild everything together, don't clutter output with compatibility warnings. Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I37
meson: Disable PSABI warning We rebuild everything together, don't clutter output with compatibility warnings. Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I3786d5a8f3255ceca0c323691d64dd29660eed9b
show more ...
|
#
0c42f40e |
| 27-Aug-2021 |
Patrick Williams <patrick@stwcx.xyz> |
logging: replace direct journal calls with lg2 Tested: Created a bogus journal message equivalent to the one in TachSensor.hpp as the first line of 'main' in FanMain.cpp:
logging: replace direct journal calls with lg2 Tested: Created a bogus journal message equivalent to the one in TachSensor.hpp as the first line of 'main' in FanMain.cpp: ``` auto device = "FooBar"; auto msg = "OpenBMC.0.1.FanInserted"; lg2::error("Fan Inserted", "REDFISH_MESSAGE_ID", msg, "REDFISH_MESSAGE_ARGS", device); ``` Observed the following in the journal: ``` { "_MACHINE_ID" : "115e76f3bc47411eb0f20075b13444e9", "_CMDLINE" : "/usr/bin/fansensor", "REDFISH_MESSAGE_ID" : "OpenBMC.0.1.FanInserted", "CODE_LINE" : "463", "_COMM" : "fansensor", "_EXE" : "/usr/bin/fansensor", "_SOURCE_REALTIME_TIMESTAMP" : "33256618", "__MONOTONIC_TIMESTAMP" : "33256849", "SYSLOG_IDENTIFIER" : "fansensor", "PRIORITY" : "3", "_CAP_EFFECTIVE" : "1ffffffffff", "_PID" : "296", "_UID" : "0", "_SYSTEMD_UNIT" : "xyz.openbmc_project.fansensor.service", "REDFISH_MESSAGE_ARGS" : "FooBar", "__REALTIME_TIMESTAMP" : "33256822", "LOG2_FMTMSG" : "Fan Inserted", "_SYSTEMD_CGROUP" : "/system.slice/xyz.openbmc_project.fansensor.service", "_GID" : "0", "_TRANSPORT" : "journal", "__CURSOR" : "s=039afc05fc934fe08b77dd73c4092591;i=1ff;b=5ad25f16b9bd424ebe72cf30558fcdc2;m=1fb7591;t=1fb7576;x=617adeeaf1da9edc", "CODE_FILE" : "../../../../../../../../sync/openbmc-sources/dbus-sensors/src/FanMain.cpp", "_SYSTEMD_INVOCATION_ID" : "9eef21c4b7784ba2aa2628f162079cd3", "CODE_FUNC" : "int main()", "MESSAGE" : "Fan Inserted", "_HOSTNAME" : "bletchley", "_SYSTEMD_SLICE" : "system.slice", "_BOOT_ID" : "5ad25f16b9bd424ebe72cf30558fcdc2" } ``` Observed the following in /var/log/redfish: ``` 1970-01-01T00:00:27.345477+00:00 OpenBMC.0.1.FanInserted,FooBar ``` Observed the following in Redfish: ``` { "@odata.id": "/redfish/v1/Systems/system/LogServices/EventLog/Entries/27", "@odata.type": "#LogEntry.v1_4_0.LogEntry", "Created": "1970-01-01T00:00:27+00:00", "EntryType": "Event", "Id": "27", "Message": "FooBar inserted.", "MessageArgs": [ "FooBar" ], "MessageId": "OpenBMC.0.1.FanInserted", "Name": "System Event Log Entry", "Severity": "OK" } ``` Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: Ib408e97ff99863cd91bcbcb43a4738d773f4e21c
show more ...
|
#
08d684ac |
| 27-Aug-2021 |
Patrick Williams <patrick@stwcx.xyz> |
build: add phosphor-logging dep and wrap Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Change-Id: I75d0e33c2e0432ef77e4d8618ebf28c6e4b3d8d0
|