openbmc.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: "Spencer Ku (古世瑜)" <Spencer.Ku@quantatw.com>
To: Nan Zhou <nanzhou@google.com>,
	"openbmc@lists.ozlabs.org" <openbmc@lists.ozlabs.org>
Cc: Justin Chen <juschen@google.com>,
	Litzung Chen <litzung.chen@quanta.corp-partner.google.com>,
	Ofer Yehielli <ofery@google.com>, Ed Tanous <edtanous@google.com>,
	Richard Hanley <rhanley@google.com>,
	Spencer Ku <spencer.ku@quanta.corp-partner.google.com>,
	Zhenfei Tai <ztai@google.com>
Subject: RE: Host Serial Console Logs via Redfish
Date: Mon, 15 Mar 2021 08:29:26 +0000	[thread overview]
Message-ID: <HK0PR04MB32993E0C43EBA2D2268642ABE46C9@HK0PR04MB3299.apcprd04.prod.outlook.com> (raw)
In-Reply-To: <CAOLfGj7xOoZw0HFvNNE5-fU0VNxt48CwSi_--y7JR01TWs-xqg@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 3004 bytes --]

Hi Nan,

Thank you for the announcement, and here is a little feedback for the introduction.

Hope it will be helpful to you.



On Mon, Mar 08, 2021 at 01:45:00PM -0800, Nan Zhou wrote:



>   We found there are some improvements as listed below,

>   - Logs are not exposed to Redfish until they reach BUF_MAXSIZE or BUF_MAXTIME

>   (defined in https://github.com/openbmc/phosphor-hostlogger), but we want

>   to achieve a stream-like console. We could set BUF_MAXSIZE to 1 or BUF_MAXTIME

>   to a very short interval, but it will amplify the overhead of compression and

>   decompression.



Just remind that hostlogger message can manual flush by trigger signal SIGUSR1.



>   - Persistence isn’t optional. phosphor-hostlogger doesn’t expose any IPC interface.

>   bmcweb can only talk to phosphor-hostlogger via zip files, which makes persistence of logs a necessary condition.

>

>   - 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.



I think this method can be covered by phosphor-hostlogger if we using SIGUSR1 to trigger the message.

But the performance will be a problem.



>   - 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.



I prefer to this method, but how to implement the phosphor-hostlogger as a library and install into the existing bmcweb may be a problem.



>   - Method 4: *phosphor-hostlogger + journal + rsyslog + bmcweb*: this

>   architecture is very similar to what the current OpenBMC uses for

>   redfish-event

>   <https://apc01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fopenbmc%2Fdocs%2Fblob%2Fmaster%2Farchitecture%2Fredfish-logging-in-bmcweb.md&amp;data=04%7C01%7CSpencer.Ku%40quantatw.com%7Cb9cdaaa48d1d4d20771208d8e307e0a5%7C179b032707fc4973ac738de7313561b2%7C1%7C0%7C637508970271861045%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=7RwG8tjsFT5NHT6KhdxRcPi6jNJqi7LLV3QuaeoMpd8%3D&amp;reserved=0>.

>   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.



Sincerely,

Spencer Ku


[-- Attachment #2: Type: text/html, Size: 15958 bytes --]

  parent reply	other threads:[~2021-03-15  8:31 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-08 21:45 Host Serial Console Logs via Redfish Nan Zhou
2021-03-09 14:29 ` Brad Bishop
2021-03-10 20:53   ` Nan Zhou
2021-03-15  8:29 ` Spencer Ku (古世瑜) [this message]
2021-05-06  8:37 ` Spencer Ku (古世瑜)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=HK0PR04MB32993E0C43EBA2D2268642ABE46C9@HK0PR04MB3299.apcprd04.prod.outlook.com \
    --to=spencer.ku@quantatw.com \
    --cc=edtanous@google.com \
    --cc=juschen@google.com \
    --cc=litzung.chen@quanta.corp-partner.google.com \
    --cc=nanzhou@google.com \
    --cc=ofery@google.com \
    --cc=openbmc@lists.ozlabs.org \
    --cc=rhanley@google.com \
    --cc=spencer.ku@quanta.corp-partner.google.com \
    --cc=ztai@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).