How to add Redfish EventLog using commands

Ed Tanous ed at tanous.net
Wed May 5 06:01:18 AEST 2021


On Tue, May 4, 2021 at 2:54 AM Thang Nguyen
<thang at os.amperecomputing.com> wrote:
>
> Hi,
>
> I am looking for the mechanism to add events to Redfish EventLog. I
> checked on the Redfish EventService design
> (https://github.com/openbmc/docs/blob/master/designs/redfish-eventservice.md)
> and it seems only has C++ functional calls (sd_journal_send(),
> phosphor::logging::log(), ...) but not user commands that can be used in
> the shell script.

This kind of logging and handling would imply that your script has
outlived what should realistically be put in a bash script, and should
be rewritten in something compiled (probably c++).  Redfish logs
require string and variable manipulation that is generally not well
defined in bash scripts.

>
> There are many use cases for adding EventLogs:
>
> 1. Use phosphor-gpio-monitor to monitor signals like power/reset,
> button, ... and log the event

Considering that Redfish event log is for high level things, I suspect
this isn't a great fit.  power/reset would be handled within whatever
state system you're using (phosphor-state-manager or
x86-power-control), right?

>
> 2. Use phosphor-gpio-monitor to check if the Host boot fail, control the
> mux to switch to other boot devices, along with logging events.

This seems like something that shouldn't be done from bash;

>
> 3. Check device presences (from /sys interfaces) and log events, ...

Redfish itself should have no knowledge of specific linux interfaces,
or linux at all.  Dependent on the actual /sys device you're looking
for, there's probably already daemons that expose those types of
events.  Without going into more specifics, I'm not sure this is
advised.

>
>
> I checked on existing repositories like phosphor-sel-logger,
> dbus-sensors, ... and they only support events for their features (like
> power dc on/off, sensor threshold, inventory data added/removed, ...)
> and the Redfish events added in C++.

Which is I think the right design choice.

>
> I can have a C++ codes to just support options to add different EventLog
> data with parameters. But it can't be inside meta- folder so need a
> repository for it.

For what it's worth, the bash scripts shouldn't be going in the meta
repo either.

> I think it's not worth for creating a new repo just
> to support an application with dozen like of codes to just add EventLog.

Disagree about whether it's worth it.  WIth that said, depending on
what you're trying to do, there's likely already a repo for the
feature you're trying to implement.

>
> Do you have any idea of any existing repo support adding Redfish
> EventLog from script/command line or any repo that we can extend to
> support such command?
>
>
> Best Regards,
>
> Thang Q. Nguyen -
>


More information about the openbmc mailing list