Host Serial Console Logs via Redfish
Brad Bishop
bradleyb at fuzziesquirrel.com
Wed Mar 10 01:29:56 AEDT 2021
Hi Nan
Thanks for this announcement. I don't have a lot of specific feedback
for you, but this sort of introduction to new content is super helpful
for the overall health of OpenBMC.
On Mon, Mar 08, 2021 at 01:45:00PM -0800, Nan Zhou wrote:
>Implementation for Phase 1 is in
>https://gerrit.openbmc-project.xyz/c/openbmc/bmcweb/+/39093. It is
>based on obmc-console, phosphor-hostlogger, and bmcweb. The basic idea is
I like how you are making use of these existing projects.
>that phosphor-hostlogger collects host serial console logs via obmc-console
>and generates tarballs in a rotation manner. These tarballs are then
>consumed and exposed by a new node in bmcweb log service.
Is it one console line per LogEntry?
>We propose the following methods to improve it.
>
> - Method 1: *D-Bus Signal*; phosphor-hostlogger implements an interface
> which contains a signal. The payload of the signal should contain
> timestamps and log messages. BmcWeb registers as a listener and once it
> receives a signal, it populates a new LogEntry. BmcWeb should implement its
> own configurable ring buffer to store log entries received from D-Bus.
> - Method 2: *File Watcher*; add file watchers in BmcWeb to monitor the
> log files produced by phosphor-hostlogger. This method is similar to method
> 1. But persistence is still a necessary condition.
> - Method 3: *obmc-console + bmcweb*: install the console collection and
> ring buffer parts of phosphor-hostlogger as a library. Use the library
> directly in BmcWeb to collect console logs.
> - Method 4: *phosphor-hostlogger + journal + rsyslog + bmcweb*: this
> architecture is very similar to what the current OpenBMC uses for
> redfish-event
> <https://github.com/openbmc/docs/blob/master/architecture/redfish-logging-in-bmcweb.md>.
> Add a new schema for log entries. Publish journal logs in
> phosphor-hostlogger. Add file watchers in BmcWeb to monitor the log files
> produced by rsyslog. rsyslog should have log rotation enabled. Persistence
> is still a necessary condition.
Perhaps a missing option here is a single dbus object per LogEntry? I'm
not necessarily advocating for that - can I assume that was not
considered because of performance/scaling concerns?
-brad
More information about the openbmc
mailing list